Controlled lighting methods and apparatus

ABSTRACT

Described herein are lighting units of a variety of types and configurations, including linear lighting units suitable for lighting large spaces, such as building exteriors and interiors. Also provided herein are methods and systems for powering lighting units, controlling lighting units, authoring displays for lighting units, and addressing control data for lighting units.

CROSS-REFERENCES TO RELATED APPLICATIONS

This patent application claims the benefit under 35 U.S.C. §119(e) ofthe following U.S. Provisional Applications:

Ser. No. 60/354,692, filed Feb. 6, 2002, entitled “LED Based LightingSystems”;

Ser. No. 60/401,964, filed Aug. 8, 2002, entitled “LED Based LightingSystems”;

Ser. No. 60/401,965, filed Aug. 8, 2002, entitled “Methods and Apparatusfor Controlling Addressable Systems;” and

Ser. No. 60/415,897, filed Oct. 3, 2002, entitled “Methods and Apparatusfor Illuminating Environments”.

This application also claims the benefit under 35 U.S.C. §120 as acontinuation-in-part (CIP) of the following U.S. Non-provisionalapplications:

Ser. No. 09/870,193, filed May 30, 2001, entitled “Methods and Apparatusfor Controlling Devices in a Networked Lighting System”, now U.S. Pat.No. 6,608,453;

Ser. No. 10/045,604, filed Oct. 23, 2001, entitled “Systems and Methodsfor Digital Entertainment;”

Ser. No. 10/158,579, filed May 30, 2002, entitled “Methods and Apparatusfor Controlling Devices in a Networked Lighting System”, now U.S. Pat.No. 6,777,891;

Ser. No. 10/163,164, filed Jun. 5, 2002, entitled “Systems and Method ofGenerating Control Signals;” and

Ser. No. 10/325,635, filed Dec. 19, 2002, entitled “Controlled LightingMethods and Apparatus.”

Each of the foregoing applications is hereby incorporated herein byreference.

FIELD OF THE INVENTION

This invention relates to the field of lighting, and more particularlyto the field of processor-controlled lighting.

BACKGROUND

With the advent of digital lighting technologies, it is becomingincreasingly popular to create lighting networks of light-emitting diode(LED) based lighting devices, as described in U.S. Pat. Nos. 6,016,038,6,150,774 and 6,166,496, each of which are incorporated herein byreference. Fantastic lighting effects can be created with these systemsand the lighting effects can be coordinated through a network to make,for example, a rainbow chase down a hallway or corridor. These lightingsystems are generally controlled through a network, although there aremany non-networked applications, wherein a data stream containingpackets of information is communicated to the lighting devices. Each ofthe lighting devices may see all of the packets of information but onlyrespond to packets that are addressed to the particular device. Once aproperly addressed packet of information arrives, the lighting devicemay read and execute the commands. This arrangement demands that each ofthe lighting devices have an address and these addresses need to beunique with respect to the other lighting devices on the network. Theaddresses are normally set by setting switches on each of the lightingdevices during installation. Settings switches tends to be timeconsuming and error prone.

Lighting systems for theatres, entertainment, retail and architecturalvenues such as casinos, theme parks, stores, malls, etcetera, requireelaborate lighting instruments and, in addition, networks to control thelights. One of the designers' most onerous tasks comes after all thelights are in place: configuration. This involves going to eachinstrument or light fixture and determining and setting the networkaddress of each unit through the use of switches or dials and thendetermining the setup and corresponding element on a lighting board orcomputer. Two people usually accomplish this and, depending on thedistance, use walkie-talkies and enter into a lot of back and forthdiscussion during the process. With sufficient planning and coordinationthis address selection and setting can be done a priori but stillrequires substantial time and effort

This task can take many hours depending on the locations. For example, anew amusement park ride may use hundreds of lighting fixtures, each ofwhich is controlled over a network and are neither line-of-sight to eachother or to any single point. Each one must be identified and acorrespondence made between the light and its setting on the lightingcontrol board. Mix-ups and confusion are common during this process.

Currently, networked lighting devices have their addresses set through aseries of physical switches such as dials, dipswitches or buttons. Thesedevices have to be individually set to particular addresses and thisprocess can be cumbersome. It would be useful to avoid this process ormake the system more user friendly.

There are several other problems associated with these lighting systems.While many such lighting systems are used for indirect lighting, generalillumination and the like, some such systems are used for direct viewapplications. That is, the viewer is directly viewing the light emittedfrom the lighting system (e.g. accent lighting on a building where thelight is intended to outline the perimeter of the building.) Generally,these lighting systems have gaps in light emission towards the ends ofthe system and alignment of one lighting system next to another producesgaps where there is little or no light produced. There are manyinstallations that require long lines of lighting systems placed in arow or other pattern in an attempt to produce a continuous light line.The gaps in light tend to detract from such applications.

Another problem associated with these systems is that when the LEDs aredirectly viewed they appear to be discrete light emitters until there issufficient distance between the light and the viewer. Even when theviewer is relatively far away from the lighting system, the lightingsystem does not tend to produce very bright or brilliant lightingeffects.

Another problem associated with these lighting systems is that thecommunication and power is fed through the ends of the housing and intojunction boxes at the beginning and end of every light. The three lines,power ground, data, are run through each end and then passed through thelength of the fixture. Each lighting element in the housing would tapinto the three lines for power and data. Mounting of the lights is veryexpensive because it is done through junction boxes. Every lightrequired two junction boxes to be mounted on the wall or other mountingsurface and wires and conduit needs to be run between boxes to allow twolighting units to be connected together.

SUMMARY

One embodiment of the invention is directed to a device that isconfigured to set the address of an illumination device. For example,many lighting installations have hundreds of LED based lighting devicesand these lighting devices may be connected through a network. Lightingcontrol information may be sent over the network and each of thelighting devices may be waiting for addressed instructions. The data maybe in the form of a data stream where lighting control information iscommunicated to all of the lighting devices. The data stream may bebroken up into packets where each packet includes an address. Anotherexample of data format is when the position of the data within the datastream indicates its address (e.g. DMX protocol). When a lighting devicereceives a data packet that is addressed to it the lighting device mayread and execute the instructions. This technique is taught in U.S. Pat.No. 6,016,038. Rather than setting dip switches on every lighting deviceit would be much easier and faster to attach a lighting device to aprogramming device according to the principles of the invention and loadan address into the lighting device. This may take the form ofgenerating an address and then sending the address to the lightingdevice.

A method of setting the address of a lighting system according to theprinciples of the invention may include plugging the programming deviceinto the lighting system. The programming device may also power thelighting system. Upon attachment of the programming device the lightingdevice may power up. A knob on the user interface of the programmingdevice may be rotated to select a program, program parameter, or addressmode. After the program has been selected, a parameter may then beselected and set. After the address mode has been selected, an addressmay be selected and set. The programming device may also automaticallyincrement the address to provide quick setting of many lighting systemsin an installation.

The lighting device can also be programmed to log the activities such asaddress setting, program selection, parameter setting or other settings.This may be useful in retrieving information at a later time. Forexample, many lighting devices have a unique identifier (e.g. a serialnumber) and this serial number could be retrieved along with the addresssettings and changes to the address setting. This information may beretrievable from a central computer operating the lighting network forexample. This information could be used to locate the particularlighting device on the network by the serial number. This may be usefulin the event the lighting device has to be changed for example. When thelighting device is removed from the network, the central controller, ormaster controller, may be monitoring the network and realize thelighting device has been removed. When the next lighting device isattached to the system, at a similar location with respect to otherlighting devices, the central system or master device may automaticallyset the address. Other information may also be retrieved from thelighting device such as date of manufacture, calibration information,color settings or other information. The lighting network may also usethis information. For example, a network may retrieve information from alighting device; subsequently the lighting device may malfunction and bereplaced. The new lighting device may be of a newer version and as aresult it may be much brighter than the original device. The networksystem could compare the information gathered from the original lightingdevice and compare it to the information gathered from the replacementdevice and then adjust the replacement device accordingly.

Another embodiment relates to lighting methods and systems that includeproviding a substantially linear circuit board, disposing a plurality oflight sources along the circuit board, disposing the circuit board andthe light sources in a substantially linear housing, providing alight-transmissive cover for the housing and providing a connectionfacility of the housing that allows a first unit of the lighting systemto connect end to end with a second unit of the lighting system withouta gap between the housings. In embodiments the light sources are LEDs.In embodiments the processor and the LEDs are on the same circuit board.In embodiments the connection facility is a hole that allows cables toexit the housing at a location other than the end of the housing. Inembodiments the processor is an application specific integrated circuit(ASIC). In embodiments the ASIC is configured to receive and transmit adata stream. In embodiments the ASIC responds to data addressed to it,modifies at least one bit of the data stream, and transmits the modifieddata stream.

The methods and systems disclosed herein may further comprise disposinga plurality of lighting systems in a serial configuration andcontrolling all of them by a stream of data to respective ASICs of eachof them, wherein each lighting system responds to the first unmodifiedbit of data in the stream, modifies that bit of data, and transmits thestream to the next ASIC.

In embodiments the lighting system may have a housing configured toresemble a fluorescent light. The housing may be linear, curved, bent,branched, or in a “T” or “V” shape, among other shapes.

The methods and systems may further include providing a communicationfacility of the lighting system, wherein the lighting system responds todata from a source exterior to the lighting system. The data may comefrom a signal source exterior to the lighting system. The signal sourcemay be a wireless signal source. In embodiments the signal sourceincludes a sensor for sensing an environmental condition, and thecontrol of the lighting system is in response to the environmentalcondition. In embodiments the signal source generates a signal based ona scripted lighting program for the lighting system.

In embodiments the control of the lighting system is based on assignmentof lighting system units as objects in an object-oriented computerprogram. In embodiments the computer program is an authoring system. Inembodiments the authoring system relates attributes in a virtual systemto real world attributes of lighting systems. In embodiments the realworld attributes include positions of lighting units of the lightingsystem. In embodiments the computer program is a computer game. In otherembodiments the computer program is a music program.

In embodiments of the methods and systems provided herein, the lightingsystem includes a power supply. In embodiments the power supply is apower-factor-controlled power supply. In embodiments the power supply isa two-stage power supply. In embodiments the power factor correctionincludes an energy storage capacitor and a DC—DC converter. Inembodiments the PFC and energy storage capacitor are separated from theDC—DC converter by a bus.

In embodiments of the methods and systems provided herein, the lightingsystems further include disposing at least one such lighting unit on abuilding. In embodiments the lighting units are disposed in an array ona building. In embodiments the array is configured to facilitatedisplaying at least one of a number, a word, a letter, a logo, a brand,and a symbol. In embodiments the array is configured to display a lightshow with time-based effects.

In embodiments of the methods and systems provided herein, the lightingsystems can be disposed on a vehicle, an automobile, a boat, a mast, asail, an airplane, a wing, a fountain, a waterfall or similar item. Inother embodiments, lighting units can be disposed on a deck, a stairway,a door, a window, a roofline, a gazebo, a jungle gym, a swing set, aslide, a tree house, a club house, a garage, a shed, a pool, a spa,furniture, an umbrella, a counter, a cabinet, a pond, a walkway, a tree,a fence, a light pole, a statue or other object.

In embodiments the lighting units described herein are configured to berecessed into an alcove or similar facility.

Methods and systems disclosed herein include lighting systems thatinclude a platform, circuit board wherein the circuit board comprises atleast one circuit; an illumination source, LED, plurality of LEDs;multi-colored LEDs, wherein the illumination source is associated withthe platform, wherein the illumination source is mounted on the circuitboard; wherein the illumination source is associated with the at leastone circuit, wire, bus, conductor, or plurality of conductors, whereinthe foregoing comprises at least one data conductor and at least onepower conductor, wherein the wire is electrically associated with thecircuit through an insulation displacement system.

Methods and systems disclosed herein include a plurality of lightingsystems wherein the plurality of lighting systems are electricallyassociated; wherein the electrical association comprises at least oneconductor wherein the conductor is associated with each of the pluralityof lighting systems through an insulation displacement system.

In embodiments the plurality of lighting systems is associated with anoptic; wherein the association with the optic comprises an opticalassociation; wherein the association with the optic comprises amechanical association.

In embodiments the optic comprises an extruded material; wherein thematerial comprises polycarbonate; wherein the polycarbonate istranslucent; wherein the optic further comprises a guide feature and theplatform is mechanically associated with the guide feature; wherein theguide feature is on an interior surface of the optic; and wherein theplurality of lighting systems are mechanically associated with the guidefeature

Methods and systems disclosed herein include a lighting system thatincludes one or more of various configurations of LEDs, including anLED, an LED color controllable system, two LEDs, two rows of LEDs, tworows of multicolored LEDs, or LEDs associated with a platform; anaddressable controller; an optic, such as an extruded optic,polycarbonate optic, double lobe optic, upper and lower lobe,translucent, transparent, wherein the optic comprises platform guides.

In embodiments the LED illumination system is optically associated withthe optic, wherein a plurality of LED illumination systems areassociated with the optic, wherein the plurality of LED illuminationsystems are independently controlled; wherein the plurality of LEDillumination systems are multi-colored illumination systems. Inembodiments the optical association provides substantially uniformillumination of at least a portion of the optic, wherein the portion isat least a portion of the upper lobe, wherein the at least a portion ofthe optic is the upper lobe, wherein the LED illumination systemprojects a substantial portion of light within a beam angle, wherein thebeam angle is formed by the light emitted by the two rows of LEDs,wherein the beam angle is aligned to project light onto the interiorsurface of the optic, wherein the alignment is optimized to generatesubstantially uniform illumination of the upper lobe of the optic.

Other embodiments include a ridged member, wherein the ridged membercomprises metal, plastic, or ceramic. In embodiments the ridged memberis mechanically associated with the optic and associated with the lowerlobe to provide rigidity to the lighting system. In embodiments theridged member is adapted to couple to an attachment device wherein theattachment device is adapted to attach the lighting system to anothersystem, wherein the other system comprises a wall, building, exterior ofbuilding. In embodiments the methods and systems include at least oneend cap, a first end cap associated with a first end of the optic and asecond end cap associated with the second end of the optic, wherein thefirst and second end caps are hermetically sealed to the optic to form awater resistant lighting assembly. In embodiments the end cap comprisesplatform guides on an interior surface, and the platform is associatedwith the platform guides, wherein at least one of the first and secondend caps comprises a gas exchange port (add a method of exchanging gasfrom the interior of the lighting system to provide a substantially dryatmosphere in the lighting system). In embodiments at least one of thefirst and second end caps further comprises an expansion facility,wherein the expansion facility is adapted to capture the ridged memberand allow for expansion differences between the ridged member and atleast one of the optic and the end cap. In embodiments the end capcomprises a cable sealing portion wherein the cable sealing portion isadapted to pass wires to the interior of the lighting system, whereinthe cable sealing portion is hermetically sealed and wherein the cablesealing system further comprises a wire strain relief system. Inembodiments the end caps comprise transparent material, translucentmaterial, substantially the same material as the optic, or polycarbonatematerial, and the lighting system is adapted to provide substantiallyuniform illumination of the upper lobe and at least an upper portion ofthe end caps such that a second lighting system can be aligned with thelighting system to form a substantially uniform interconnection ofillumination.

Methods and system provided herein also include providing a self-healinglighting system, which may include providing a plurality of lightingunits in a system, each having a plurality of light sources; providingat least one processor associated with at least some of the lightingunits for controlling the lighting units; providing a network facilityfor addressing data to each of the lighting units; providing adiagnostic facility for identifying a problem with a lighting unit; andproviding a healing facility for modifying the actions of at least oneprocessor to automatically correct the problem identified by thediagnostic facility.

As used herein for purposes of the present disclosure, the term “LED”should be understood to include any light emitting diode or other typeof carrier injection/junction-based system that is capable of generatingradiation in response to an electric signal. Thus, the term LEDincludes, but is not limited to, various semiconductor-based structuresthat emit light in response to current, light emitting polymers,light-emitting strips, electro-luminescent strips, and the like.

In particular, the term LED refers to light emitting diodes of all types(including semi-conductor and organic light emitting diodes) that may beconfigured to generate radiation in one or more of the infraredspectrum, ultraviolet spectrum, and various portions of the visiblespectrum (generally including radiation wavelengths from approximately400 nanometers to approximately 700 nanometers). Some examples of LEDsinclude, but are not limited to, various types of infrared LEDs,ultraviolet LEDs, red LEDs, blue LEDs, green LEDs, yellow LEDs, amberLEDs, orange LEDs, and white LEDs (discussed further below). It alsoshould be appreciated that LEDs may be configured to generate radiationhaving various bandwidths for a given spectrum (e.g., narrow bandwidth,broad bandwidth).

It should be noted that LED(s) in systems according to the presentinvention might be any color including white, ultraviolet, infrared orother colors within the electromagnetic spectrum. As used herein, theterm “LED” should be further understood to include, without limitation,light emitting diodes of all types, light emitting polymers,semiconductor dies that produce light in response to current, organicLEDs, electro-luminescent strips, and other such systems. In anembodiment, an “LED” may refer to a single light emitting diode havingmultiple semiconductor dies that are individually controlled. It shouldalso be understood that the term “LED” does not restrict the packagetype of the LED. The term “LED” includes packaged LEDs, non-packagedLEDs, surface mount LEDs, chip on board LEDs and LEDs of all otherconfigurations. The term “LED” also includes LEDs packaged or associatedwith material (e.g. a phosphor) wherein the material may convert energyfrom the LED to a different wavelength.

For example, one implementation of an LED configured to generateessentially white light (e.g., a white LED) may include a number of dieswhich respectively emit different spectrums of luminescence that, incombination, mix to form essentially white light. In anotherimplementation, a white light LED may be associated with a phosphormaterial that converts luminescence having a first spectrum to adifferent second spectrum. In one example of this implementation,luminescence having a relatively short wavelength and narrow bandwidthspectrum “pumps” the phosphor material, which in turn radiates longerwavelength radiation having a somewhat broader spectrum.

It should also be understood that the term LED does not limit thephysical and/or electrical package type of an LED. For example, asdiscussed above, an LED may refer to a single light emitting devicehaving multiple dies that are configured to respectively emit differentspectrums of radiation (e.g., that may or may not be individuallycontrollable). Also, an LED may be associated with a phosphor that isconsidered as an integral part of the LED (e.g., some types of whiteLEDs). In general, the term LED may refer to packaged LEDs, non-packagedLEDs, surface mount LEDs, chip-on-board LEDs, radial package LEDs, powerpackage LEDs, LEDs including some type of encasement and/or opticalelement (e.g., a diffusing lens), etc.

The term “light source” should be understood to refer to any one or moreof a variety of radiation sources, including, but not limited to,LED-based sources as defined above, incandescent sources (e.g., filamentlamps, halogen lamps), fluorescent sources, phosphorescent sources,high-intensity discharge sources (e.g., sodium vapor, mercury vapor, andmetal halide lamps), lasers, other types of luminescent sources,electro-lumiscent sources, pyro-luminescent sources (e.g., flames),candle-luminescent sources (e.g., gas mantles, carbon arc radiationsources), photo-luminescent sources (e.g., gaseous discharge sources),cathode luminescent sources using electronic satiation,galvano-luminescent sources, crystallo-luminescent sources,kine-luminescent sources, thermo-luminescent sources, triboluminescentsources, sonoluminescent sources, radioluminescent sources, andluminescent polymers.

A given light source may be configured to generate electromagneticradiation within the visible spectrum, outside the visible spectrum, ora combination of both. Hence, the terms “light” and “radiation” are usedinterchangeably herein. Additionally, a light source may include as anintegral component one or more filters (e.g., color filters), lenses, orother optical components. Also, it should be understood that lightsources may be configured for a variety of applications, including, butnot limited to, indication and/or illumination. An “illumination source”is a light source that is particularly configured to generate radiationhaving a sufficient intensity to effectively illuminate an interior orexterior space.

An LED system is one type of illumination source. As used herein“illumination source” should be understood to include all illuminationsources, including LED systems, as well as incandescent sources,including filament lamps, pyro-luminescent sources, such as flames,candle-luminescent sources, such as gas mantles and carbon archradiation sources, as well as photo-luminescent sources, includinggaseous discharges, fluorescent sources, phosphorescence sources,lasers, electro-luminescent sources, such as electro-luminescent lamps,light emitting diodes, and cathode luminescent sources using electronicsatiation, as well as miscellaneous luminescent sources includinggalvano-luminescent sources, crystallo-luminescent sources,kine-luminescent sources, thermo-luminescent sources, triboluminescentsources, sonoluminescent sources, and radioluminescent sources.Illumination sources may also include luminescent polymers capable ofproducing primary colors.

The term “illuminate” should be understood to refer to the production ofa frequency of radiation by an illumination source. The term “color”should be understood to refer to any frequency of radiation within aspectrum; that is, a “color,” as used herein, should be understood toencompass frequencies not only of the visible spectrum, but alsofrequencies in the infrared and ultraviolet areas of the spectrum, andin other areas of the electromagnetic spectrum.

The term “spectrum” should be understood to refer to any one or morefrequencies (or wavelengths) of radiation produced by one or more lightsources. Accordingly, the term “spectrum” refers to frequencies (orwavelengths) not only in the visible range, but also frequencies (orwavelengths) in the infrared, ultraviolet, and other areas of theoverall electromagnetic spectrum. Also, a given spectrum may have arelatively narrow bandwidth (essentially few frequency or wavelengthcomponents) or a relatively wide bandwidth (several frequency orwavelength components having various relative strengths). It should alsobe appreciated that a given spectrum may be the result of a mixing oftwo or more other spectrums (e.g., mixing radiation respectively emittedfrom multiple light sources).

For purposes of this disclosure, the term “color” is usedinterchangeably with the term “spectrum.” However, the term “color”generally is used to refer primarily to a property of radiation that isperceivable by an observer (although this usage is not intended to limitthe scope of this term). Accordingly, the terms “different colors”implicitly refer to different spectrums having different wavelengthcomponents and/or bandwidths. It also should be appreciated that theterm “color” may be used in connection with both white and non-whitelight.

The term “color temperature” generally is used herein in connection withwhite light, although this usage is not intended to limit the scope ofthis term. Color temperature essentially refers to a particular colorcontent or shade (e.g., reddish, bluish) of white light. The colortemperature of a given radiation sample conventionally is characterizedaccording to the temperature in degrees Kelvin (K) of a black bodyradiator that radiates essentially the same spectrum as the radiationsample in question. The color temperature of white light generally fallswithin a range of from approximately 700 degrees K (generally consideredthe first visible to the human eye) to over 10,000 degrees K.

Lower color temperatures generally indicate white light having a moresignificant red component or a “warmer feel,” while higher colortemperatures generally indicate white light having a more significantblue component or a “cooler feel.” By way of example, a wood burningfire has a color temperature of approximately 1,800 degrees K, aconventional incandescent bulb has a color temperature of approximately2848 degrees K, early morning daylight has a color temperature ofapproximately 3,000 degrees K, and overcast midday skies have a colortemperature of approximately 10,000 degrees K. A color image viewedunder white light having a color temperature of approximately 3,000degree K has a relatively reddish tone, whereas the same color imageviewed under white light having a color temperature of approximately10,000 degrees K has a relatively bluish tone.

The terms “lighting unit” and “lighting fixture” are usedinterchangeably herein to refer to an apparatus including one or morelight sources of same or different types. A given lighting unit may haveany one of a variety of mounting arrangements for the light source(s),enclosure/housing arrangements and shapes, and/or electrical andmechanical connection configurations. Additionally, a given lightingunit optionally may be associated with (e.g., include, be coupled toand/or packaged together with) various other components (e.g., controlcircuitry) relating to the operation of the light source(s). An“LED-based lighting unit” refers to a lighting unit that includes one ormore LED-based light sources as discussed above, alone or in combinationwith other non LED-based light sources.

The terms “processor” or “controller” are used herein interchangeably todescribe various apparatus relating to the operation of one or morelight sources. A processor or controller can be implemented in numerousways, such as with dedicated hardware, using one or more microprocessorsthat are programmed using software (e.g., microcode or firmware) toperform the various functions discussed herein, or as a combination ofdedicated hardware to perform some functions and programmedmicroprocessors and associated circuitry to perform other functions.

In various implementations, a processor or controller may be associatedwith one or more storage media (generically referred to herein as“memory,” e.g., volatile and non-volatile computer memory such as RAM,PROM, EPROM, and EEPROM, floppy disks, compact disks, optical disks,magnetic tape, etc.). In some implementations, the storage media may beencoded with one or more programs that, when executed on one or moreprocessors and/or controllers, perform at least some of the functionsdiscussed herein. Various storage media may be fixed within a processoror controller or may be transportable, such that the one or moreprograms stored thereon can be loaded into a processor or controller soas to implement various aspects of the present invention discussedherein. The terms “program” or “computer program” are used herein in ageneric sense to refer to any type of computer code (e.g., software ormicrocode) that can be employed to program one or more processors orcontrollers, including by retrieval of stored sequences of instructions.

The term “addressable” is used herein to refer to a device (e.g., alight source in general, a lighting unit or fixture, a controller orprocessor associated with one or more light sources or lighting units,other non-lighting related devices, etc.) that is configured to receiveinformation (e.g., data) intended for multiple devices, includingitself, and to selectively respond to particular information intendedfor it. The term “addressable” often is used in connection with anetworked environment (or a “network,” discussed further below), inwhich multiple devices are coupled together via some communicationsmedium or media.

In one implementation, one or more devices coupled to a network mayserve as a controller for one or more other devices coupled to thenetwork (e.g., in a master/slave relationship). In anotherimplementation, a networked environment may include one or morededicated controllers that are configured to control one or more of thedevices coupled to the network. Generally, multiple devices coupled tothe network each may have access to data that is present on thecommunications medium or media; however, a given device may be“addressable” in that it is configured to selectively exchange data with(i.e., receive data from and/or transmit data to) the network, based,for example, on one or more particular identifiers (e.g., “addresses”)assigned to it.

The term “network” as used herein refers to any interconnection of twoor more devices (including controllers or processors) that facilitatesthe transport of information (e.g. for device control, data storage,data exchange, etc.) between any two or more devices and/or amongmultiple devices coupled to the network. As should be readilyappreciated, various implementations of networks suitable forinterconnecting multiple devices may include any of a variety of networktopologies and employ any of a variety of communication protocols.Additionally, in various networks according to the present invention,any one connection between two devices may represent a dedicatedconnection between the two systems, or alternatively a non-dedicatedconnection. In addition to carrying information intended for the twodevices, such a non-dedicated connection may carry information notnecessarily intended for either of the two devices (e.g., an opennetwork connection). Furthermore, it should be readily appreciated thatvarious networks of devices as discussed herein may employ one or morewireless, wire/cable, and/or fiber optic links to facilitate informationtransport throughout the network.

The lighting systems described herein may also include a user interfaceused to change and or select the lighting effects displayed by thelighting system. The communication between the user interface and theprocessor may be accomplished through wired or wireless transmission.The term “user interface” as used herein refers to an interface betweena human user or operator and one or more devices that enablescommunication between the user and the device(s). Examples of userinterfaces that may be employed in various implementations of thepresent invention include, but are not limited to, switches,human-machine interfaces, operator interfaces, potentiometers, buttons,dials, sliders, a mouse, keyboard, keypad, various types of gamecontrollers (e.g., joysticks), track balls, display screens, varioustypes of graphical user interfaces (GUIs), touch screens, microphonesand other types of sensors that may receive some form of human-generatedstimulus and generate a signal in response thereto.

The following patents and patent applications are hereby incorporatedherein by reference:

U.S. Pat. No. 6,016,038, issued Jan. 18, 2000, entitled “MulticoloredLED Lighting Method and Apparatus;”

U.S. Pat. No. 6,211,626, issued Apr. 3, 2001 to Lys et al, entitled“Illumination Components;”

U.S. patent application Ser. No. 09/870,193, filed May 30, 2001,entitled “Methods and Apparatus for Controlling Devices in a NetworkedLighting System;”

U.S. patent application Ser. No. 09/344,699, filed Jun. 25, 1999,entitled “Method for Software Driven Generation of Multiple SimultaneousHigh Speed Pulse Width Modulated Signals;”

U.S. patent application Ser. No. 09/805,368, filed Mar. 13, 2001,entitled “Light-Emitting Diode Based Products;”

U.S. patent application Ser. No. 09/663,969, filed Sep. 19, 2000,entitled “Universal Lighting Network Methods and Systems;”

U.S. patent application Ser. No. 09/716,819, filed Nov. 20, 2000,entitled “Systems and Methods for Generating and Modulating IlluminationConditions;”

U.S. patent application Ser. No. 09/675,419, filed Sep. 29, 2000,entitled “Systems and Methods for Calibrating Light Output byLight-Emitting Diodes;”

U.S. patent application Ser. No. 09/870,418, filed May 30, 2001,entitled “A Method and Apparatus for Authoring and Playing Back LightingSequences;” and

U.S. patent application Ser. No. 10/045,629, filed Oct. 25, 2001,entitled “Methods and Apparatus for Controlling Illumination.”

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects and advantages of the invention will beappreciated more fully from the following further description thereof,with reference to the accompanying drawings, wherein:

FIG. 1 illustrates one example of a lighting unit that may serve as adevice in a lighting environment according to one embodiment of thepresent invention.

FIG. 2 depicts a lighting system with a plurality of lighting units anda central controller.

FIG. 3 is a schematic diagram for a programming device for programming alighting unit in accordance with the principles of the invention.

FIG. 4 depicts various configurations of lighting units in accordancewith the invention.

FIG. 5 shows a configuration made of various lighting units.

FIG. 6 shows a pyramid configuration consisting of linear lightingunits.

FIG. 7 shows a number of linear lighting units disposed in atwo-dimensional array.

FIG. 8 shows the array of FIG. 7 with certain lighting units in the “on”position and others in an “off” position.

FIG. 9 shows a time-based effect taking place on a lightingconfiguration.

FIG. 10 illustrates an example of a general process flow diagram fordetermining lighting unit identifiers according to one embodiment of thepresent invention.

FIG. 11 illustrates a portion of a lighting unit controller including apower-sensing module according to one embodiment of the presentinvention.

FIG. 12 shows an example of a circuit implementation of a lighting unitcontroller including a power-sensing module according to one embodimentof the invention.

FIG. 13 illustrates a binary tree structure representing possibleidentifiers for multiple lighting units of the system of FIG. 2,according to one embodiment of the present invention.

FIG. 14A–14B illustrate a flow chart of an identifierdetermination/learning algorithm according to one embodiment of thepresent invention.

FIG. 15 illustrates a process flow diagram according to one embodimentof the present invention for determining lighting unit identifiers byobserving an illumination state of the lighting units.

FIG. 16 illustrates a process flow diagram for determining/compilingmapping information based on physical locations of lighting unitsaccording to one embodiment of the present invention.

FIG. 17 illustrates an exemplary graphics user interface to facilitatesystem configuration according to one embodiment of the presentinvention.

FIG. 18 illustrates a process flow diagram for communicating with alighting system according to one embodiment of the present invention.

FIG. 19 is a diagram showing a networked lighting system according toone embodiment of the invention.

FIG. 20 is a diagram showing an example of a controller in the lightingsytem of FIG. 19, according to one embodiment of the invention.

FIG. 21 is a diagram showing a networked lighting system according toanother embodiment of the invention.

FIG. 22 is a diagram illustrating one example of a data protocol thatmay be used in the networked lighting system of FIG. 21, according toone embodiment of the invention.

FIG. 22A is a diagram illustrating a one-dimensional array of lightingunits to demonstrate a “self-healing” concept.

FIG. 22B is a diagram illustrating a two-dimensional array of lightingunits to demonstrate a “self-healing” concept.

FIG. 23 is a flow diagram that depicts a series of steps that can beused to locate positions of lights using a video camera.

FIG. 24 is a schematic diagram showing elements for generating alighting control signal using a configuration facility and a graphicalrepresentation facility.

FIG. 25 is a schematic diagram showing elements for generating alighting control signal from an animation facility and light managementfacility.

FIG. 26 illustrates a configuration file for data relating to lightsystems in an environment.

FIG. 27 illustrates a virtual representation of an environment using acomputer screen.

FIG. 28 is a representation of an environment with light systems thatproject light onto portions of the environment.

FIG. 29 is a schematic diagram showing the propagation of an effectthrough a light system.

FIG. 30 is a flow diagram showing steps for using an image capturedevice to determine the positions of a plurality of light systems in anenvironment.

FIG. 31 is a flow diagram showing steps for interacting with a graphicaluser interface to generate a lighting effect in an environment.

FIG. 32 is a schematic diagram depicting light systems that transmitdata that is generated by a network transmitter.

FIG. 33 is a flow diagram showing steps for generating a control signalfor a light system using an object-oriented programming technique.

FIG. 34 is a flow diagram for executing a thread to generate a lightingsignal for a real world light system based on data from a computerapplication.

FIG. 35 is a flow chart that provides steps for a method of providingfor coordinated illumination.

FIG. 36 is another flow chart with steps for providing coordinatedillumination.

FIG. 37 shows a configuration file for attributes of a lighting unit.

FIG. 38 shows steps for creating a configuration file for lightingunits.

FIG. 39 shows a system for using an array of lights in conjunction witha configuration file.

FIG. 40 shows a flow chart with steps for programming a system tocoordinate lights with a game.

FIG. 41 shows a typical low voltage switching power supply.

FIG. 42 shows a block diagram of a typical low voltage power supply witha line filter.

FIG. 43 shows another power supply arrangement with an integrated PFCand DC—DC converter.

FIG. 44 is a more detailed breakdown of the power supply of FIG. 43 withthe line filter.

FIG. 45 continues FIG. 44 to the output stage of the power supply.

FIG. 46 is an alternative embodiment of a power supply.

FIG. 47 is an alternative embodiment to the block diagram of thesingle-stage element of FIG. 43.

FIG. 48 is a block diagram of a typical LED Illumination power and datasupply system for a lighting unit.

FIG. 49 is an embodiment of a power-factor-corrected power supply.

FIG. 50 shows another embodiment of a two-stage design of a powersupply.

FIG. 51 shows another embodiment of a power-factor-correct power supply.

FIG. 52 illustrates a configuration of a lighting unit according to thepresent invention.

FIG. 53 illustrates a process flow diagram according to the presentinvention.

FIG. 54 illustrates a lighting system according to the principles of thepresent invention.

FIG. 55 illustrates a lighting system according to the principles of thepresent invention.

FIG. 56 illustrates a lighting system according to the principles of thepresent invention.

FIG. 57 illustrates a bracket according to the principles of the presentinvention.

FIG. 58 illustrates a lighting system according to the principles of thepresent invention.

FIG. 59 illustrates a lighting system including an optic according tothe principles of the present invention.

FIG. 60 illustrates a circuit assembly according to the principles ofthe present invention.

FIG. 61 illustrates an optic with end cap according to the principles ofthe present invention.

FIG. 62 illustrates an end cap with a purge vent according to theprinciples of the present invention.

FIG. 63 illustrates a lighting system assembly according to theprinciples of the present invention.

FIG. 64 illustrates an end cap and expansion system according to theprinciples of the present invention.

FIG. 65 illustrates a wiring system according to the principles of thepresent invention.

FIG. 66 illustrates a circuit assembly according to the principles ofthe present invention.

FIG. 67 depicts an array of linear lighting units that can displaydifferent effects.

FIG. 68 depicts a building with a configuration of lights.

FIG. 69 depicts an array of linear lighting units substantially coveringa building exterior.

FIG. 70 depicts display of a word on an array of linear lighting unitson the exterior of a building.

FIG. 71 depicts an array of lighting units of different configurationsfor producing a varied display on the exterior of a building.

FIG. 72 depicts a stairway and deck lit by linear lighting units.

FIG. 73 depicts a house lit by a configuration of linear lighting units.

FIG. 74 depicts a substantially cylindrical configuration of lightingunits for producing a display.

FIG. 75 depicts a corridor with lighting units in a configurationsubstantially covering the ceiling and walls of the corridor.

FIG. 76 depicts a configuration of lighting units in a dome shape.

FIG. 77 depicts a configuration of lighting units disposed on a sailboat.

DETAILED DESCRIPTION

The description below pertains to several illustrative embodiments ofthe invention. Although many variations of the invention may beenvisioned by one skilled in the art, such variations and improvementsare intended to fall within the compass of this disclosure. Thus, thescope of the invention is not to be limited in any way by the disclosurebelow.

Various embodiments of the present invention are described below,including certain embodiments relating particularly to LED-based lightsources. It should be appreciated, however, that the present inventionis not limited to any particular manner of implementation, and that thevarious embodiments discussed explicitly herein are primarily forpurposes of illustration. For example, the various concepts discussedherein may be suitably implemented in a variety of environmentsinvolving LED-based light sources, other types of light sources notincluding LEDs, environments that involve both LEDs and other types oflight sources in combination, and environments that involvenon-lighting-related devices alone or in combination with various typesof light sources.

FIG. 1 illustrates one example of a lighting unit 100 that may serve asa device in a lighting environment according to one embodiment of thepresent invention. Some examples of LED-based lighting units similar tothose that are described below in connection with FIG. 1 may be found,for example, in U.S. Pat. No. 6,016,038, issued Jan. 18, 2000 to Muelleret al., entitled “Multicolored LED Lighting Method and Apparatus,” andU.S. Pat. No. 6,211,626, issued Apr. 3, 2001 to Lys et al, entitled“Illumination Components,” which patents are both hereby incorporatedherein by reference.

In various embodiments of the present invention, the lighting unit 100shown in FIG. 1 may be used alone or together with other similarlighting units in a system of lighting units (e.g., as discussed furtherbelow in connection with FIG. 2). Used alone or in combination withother lighting units, the lighting unit 100 may be employed in a varietyof applications including, but not limited to, interior or exteriorspace illumination in general, direct or indirect illumination ofobjects or spaces, theatrical or other entertainment-based/specialeffects illumination, decorative illumination, safety-orientedillumination, vehicular illumination, illumination of displays and/ormerchandise (e.g. for advertising and/or in retail/consumerenvironments), combined illumination and communication systems, etc., aswell as for various indication and informational purposes.

Additionally, one or more lighting units similar to that described inconnection with FIG. 1 may be implemented in a variety of productsincluding, but not limited to, various forms of light modules or bulbshaving various shapes and electrical/mechanical coupling arrangements(including replacement or “retrofit” modules or bulbs adapted for use inconventional sockets or fixtures), as well as a variety of consumerand/or household products (e.g., night lights, toys, games or gamecomponents, entertainment components or systems, utensils, appliances,kitchen aids, cleaning products, etc.).

In one embodiment, the lighting unit 100 shown in FIG. 1 may include oneor more light sources 104A, 104B, 104C, and 104D wherein one or more ofthe light sources may be an LED-based light source that includes one ormore light emitting diodes (LEDs). In one aspect of this embodiment, anytwo or more of the light sources 104A, 104B, 104C and 104D may beadapted to generate radiation of different colors (e.g. red, green, andblue, respectively). Although FIG. 1 shows four light sources 104A,104B, 104C, and 104D, it should be appreciated that the lighting unit isnot limited in this respect, as different numbers and various types oflight sources (all LED-based light sources, LED-based and non-LED-basedlight sources in combination, etc.) adapted to generate radiation of avariety of different colors, including essentially white light, may beemployed in the lighting unit 100, as discussed further below.

As shown in FIG. 1, the lighting unit 100 also may include a processor102 that is configured to output one or more control signals to drivethe light sources 104A, 104B, 104C and 104D so as to generate variousintensities of light from the light sources. For example, in oneimplementation, the processor 102 may be configured to output at leastone control signal for each light source so as to independently controlthe intensity of light generated by each light source. Some examples ofcontrol signals that may be generated by the processor to control thelight sources include, but are not limited to, pulse modulated signals,pulse width modulated signals (PWM), pulse amplitude modulated signals(PAM), pulse displacement modulated signals, analog control signals(e.g., current control signals, voltage control signals), combinationsand/or modulations of the foregoing signals, or other control signals.In one aspect, the processor 102 may control other dedicated circuitry(not shown in FIG. 1), which in turn controls the light sources so as tovary their respective intensities.

Lighting systems in accordance with this specification can operate LEDsin an efficient manner. Typical LED performance characteristics dependon the amount of current drawn by the LED. The optimal efficacy may beobtained at a lower current than the level where maximum brightnessoccurs. LEDs are typically driven well above their most efficientoperating current to increase the brightness delivered by the LED whilemaintaining a reasonable life expectancy. As a result, increasedefficacy can be provided when the maximum current value of the PWMsignal may be variable. For example, if the desired light output is lessthan the maximum required output the current maximum and/or the PWMsignal width may be reduced. This may result in pulse amplitudemodulation (PAM), for example; however, the width and amplitude of thecurrent used to drive the LED may be varied to optimize the LEDperformance. In an embodiment, a lighting system may also be adapted toprovide only amplitude control of the current through the LED. Whilemany of the embodiments provided herein describe the use of PWM and PAMto drive the LEDs, one skilled in the art would appreciate that thereare many techniques to accomplish the LED control described herein and,as such, the scope of the present invention is not limited by any onecontrol technique. In embodiments, it is possible to use othertechniques, such as pulse frequency modulation (PFM), or pulsedisplacement modulation (PDM), such as in combination with either orboth of PWM and PAM.

Pulse width modulation (PWM) involves supplying a substantially constantcurrent to the LEDs for particular periods of time. The shorter thetime, or pulse-width, the less brightness an observer will observe inthe resulting light. The human eye integrates the light it receives overa period of time and, even though the current through the LED maygenerate the same light level regardless of pulse duration, the eye willperceive short pulses as “dimmer” than longer pulses. The PWM techniqueis considered on of the preferred techniques for driving LEDs, althoughthe present invention is not limited to such control techniques. Whentwo or more colored LEDs are provided in a lighting system, the colorsmay be mixed and many variations of colors can be generated by changingthe intensity, or perceived intensity, of the LEDs. In an embodiment,three colors of LEDs are presented (e.g., red, green and blue) and eachof the colors is driven with PWM to vary its apparent intensity. Thissystem allows for the generation of millions of colors (e.g., 16.7million colors when 8-bit control is used on each of the PWM channels).

In an embodiment the LEDs are modulated with PWM as well as modulatingthe amplitude of the current driving the LEDs (Pulse AmplitudeModulation, or PAM). LED efficiency increases to a maximum followed bydecreasing efficiency. Typically, LEDs are driven at a current levelbeyond its maximum efficiency to attain greater brightness whilemaintaining acceptable life expectancy. The objective is typically tomaximize the light output from the LED while maintaining an acceptablelifetime. In an embodiment, the LEDs may be driven with a lower currentmaximum when lower intensities are desired. PWM may still be used, butthe maximum current intensity may also be varied depending on thedesired light output. For example, to decrease the intensity of thelight output from a maximum operational point, the amplitude of thecurrent may be decreased until the maximum efficiency is achieved. Iffurther reductions in the LED brightness are desired the PWM activationmay be reduced to reduce the apparent brightness.

In one embodiment of the lighting unit 100, one or more of the lightsources 104A, 104B, 104C and 104D shown in FIG. 1 may include a group ofmultiple LEDs or other types of light sources (e.g., various paralleland/or serial connections of LEDs or other types of light sources) thatare controlled together by the processor 102. Additionally, it should beappreciated that one or more of the light sources 104A, 104B, 104C and104D may include one or more LEDs that are adapted to generate radiationhaving any of a variety of spectra (i.e., wavelengths or wavelengthbands), including, but not limited to, various visible colors (includingessentially white light), various color temperatures of white light,ultraviolet, or infrared.

In another aspect of the lighting unit 100 shown in FIG. 1, the lightingunit 100 may be constructed and arranged to produce a wide range ofvariable color radiation. For example, the lighting unit 100 may beparticularly arranged such that the processor-controlled variableintensity light generated by two or more of the light sources combinesto produce a mixed colored light (including essentially white lighthaving a variety of color temperatures). In particular, the color (orcolor temperature) of the mixed colored light may be varied by varyingone or more of the respective intensities of the light sources (e.g., inresponse to one or more control signals output by the processor 102).Furthermore, the processor 102 may be particularly configured (e.g.,programmed) to provide control signals to one or more of the lightsources so as to generate a variety of static or time-varying (dynamic)multi-color (or multi-color temperature) lighting effects.

As shown in FIG. 1, the lighting unit 100 also may include a memory 114to store various information. For example, the memory 114 may beemployed to store one or more lighting programs for execution by theprocessor 102 (e.g., to generate one or more control signals for thelight sources), as well as various types of data useful for generatingvariable color radiation (e.g., calibration information, discussedfurther below). The memory 114 also may store one or more particularidentifiers (e.g., a serial number, an address, etc.) that may be usedeither locally or on a system level to identify the lighting unit 100.In various embodiments, such identifiers may be pre-programmed by amanufacturer, for example, and may be either alterable or non-alterablethereafter (e.g., via some type of user interface located on thelighting unit, via one or more data or control signals received by thelighting unit, etc.). Alternatively, such identifiers may be determinedat the time of initial use of the lighting unit in the field, and againmay be alterable or non-alterable thereafter.

One issue that may arise in connection with controlling multiple lightsources in the lighting unit 100 of FIG. 1, and controlling multiplelighting unit 100 in a lighting system (e.g., as discussed below inconnection with FIG. 2), relates to potentially perceptible differencesin light output between substantially similar light sources. Forexample, given two virtually identical light sources being driven byrespective identical control signals, the actual intensity of lightoutput by each light source may be perceptibly different. Such adifference in light output may be attributed to various factorsincluding, for example, slight manufacturing differences between thelight sources, normal wear and tear over time of the light sources thatmay differently alter the respective spectrums of the generatedradiation, etc. For purposes of the present discussion, light sourcesfor which a particular relationship between a control signal andresulting intensity are not known are referred to as “uncalibrated”light sources.

The use of one or more uncalibrated light sources in the lighting unit100 shown in FIG. 1 may result in generation of light having anunpredictable, or “uncalibrated,” color or color temperature. Forexample, consider a first lighting unit including a first uncalibratedred light source and a first uncalibrated blue light source, eachcontrolled by a corresponding control signal having an adjustableparameter in a range of from zero to 255 (0–255). For purposes of thisexample, if the red control signal is set to zero, blue light isgenerated, whereas if the blue control signal is set to zero, red lightis generated. However, if both control signals are varied from non-zerovalues, a variety of perceptibly different colors may be produced (e.g.,in this example, at very least, many different shades of purple arepossible). In particular, perhaps a particular desired color (e.g.,lavender) is given by a red control signal having a value of 125 and ablue control signal having a value of 200.

Now consider a second lighting unit including a second uncalibrated redlight source substantially similar to the first uncalibrated red lightsource of the first lighting unit, and a second uncalibrated blue lightsource substantially similar to the first uncalibrated blue light sourceof the first lighting unit. As discussed above, even if both of theuncalibrated red light sources are driven by respective identicalcontrol signals, the actual intensity of light output by each red lightsource may be perceptibly different. Similarly, even if both of theuncalibrated blue light sources are driven by respective identicalcontrol signals, the actual intensity of light output by each blue lightsource may be perceptibly different.

With the foregoing in mind, it should be appreciated that if multipleuncalibrated light sources are used in combination in lighting units toproduce a mixed colored light as discussed above, the observed color (orcolor temperature) of light produced by different lighting units underidentical control conditions may be perceivably different. Specifically,consider again the “lavender” example above; the “first lavender”produced by the first lighting unit with a red control signal of 125 anda blue control signal of 200 indeed may be perceptibly different than a“second lavender” produced by the second lighting unit with a redcontrol signal of 125 and a blue control signal of 200. More generally,the first and second lighting units generate uncalibrated colors byvirtue of their uncalibrated light sources.

In view of the foregoing, in one embodiment of the present invention,the lighting unit 100 includes calibration means to facilitate thegeneration of light having a calibrated (e.g., predictable,reproducible) color at any given time. In one aspect, the calibrationmeans is configured to adjust the light output of at least some lightsources of the lighting unit so as to compensate for perceptibledifferences between similar light sources used in different lightingunits.

For example, in one embodiment, the processor 102 of the lighting unit100 is configured to control one or more of the light sources 104A,104B, 104C and 104D so as to output radiation at a calibrated intensitythat substantially corresponds in a predetermined manner to a controlsignal for the light source(s). As a result of mixing radiation havingdifferent spectra and respective calibrated intensities, a calibratedcolor is produced. In one aspect of this embodiment, at least onecalibration value for each light source is stored in the memory 114, andthe processor is programmed to apply the respective calibration valuesto the control signals for the corresponding light sources so as togenerate the calibrated intensities.

In one aspect of this embodiment, one or more calibration values may bedetermined once (e.g., during a lighting unit manufacturing/testingphase) and stored in the memory 114 for use by the processor 102. Inanother aspect, the processor 102 may be configured to derive one ormore calibration values dynamically (e.g. from time to time) with theaid of one or more photosensors, for example. In various embodiments,the photosensor(s) may be one or more external components coupled to thelighting unit, or alternatively may be integrated as part of thelighting unit itself. A photosensor is one example of a signal sourcethat may be integrated or otherwise associated with the lighting unit100, and monitored by the processor 102 in connection with the operationof the lighting unit. Other examples of such signal sources arediscussed further below, in connection with the signal source 124 shownin FIG. 1.

One exemplary method that may be implemented by the processor 102 toderive one or more calibration values includes applying a referencecontrol signal to a light source, and measuring (e.g., via one or morephotosensors) an intensity of radiation thus generated by the lightsource. The processor may be programmed to then make a comparison of themeasured intensity and at least one reference value (e.g., representingan intensity that nominally would be expected in response to thereference control signal). Based on such a comparison, the processor maydetermine one or more calibration values for the light source. Inparticular, the processor may derive a calibration value such that, whenapplied to the reference control signal, the light source outputsradiation having an intensity that corresponds to the reference value(i.e., the “expected” intensity).

In various aspects, one calibration value may be derived for an entirerange of control signal/output intensities for a given light source.Alternatively, multiple calibration values may be derived for a givenlight source (i.e., a number of calibration value “samples” may beobtained) that are respectively applied over different controlsignal/output intensity ranges, to approximate a nonlinear calibrationfunction in a piecewise linear manner.

In another aspect, as also shown in FIG. 1, the lighting unit 100optionally may include one or more user interfaces 118 that are providedto facilitate any of a number of user-selectable settings or functions(e.g., generally controlling the light output of the lighting unit 100,changing and/or selecting various pre-programmed lighting effects to begenerated by the lighting unit, changing and/or selecting variousparameters of selected lighting effects, setting particular identifierssuch as addresses or serial numbers for the lighting unit, etc.). Invarious embodiments, the communication between the user interface 118and the lighting unit may be accomplished through wire or cable, orwireless transmission.

In one implementation, the processor 102 of the lighting unit monitorsthe user interface 118 and controls one or more of the light sources104A, 104B, 104C and 104D based at least in part on a user's operationof the interface. For example, the processor 102 may be configured torespond to operation of the user interface by originating one or morecontrol signals for controlling one or more of the light sources.Alternatively, the processor 102 may be configured to respond byselecting one or more pre-programmed control signals stored in memory,modifying control signals generated by executing a lighting program,selecting and executing a new lighting program from memory, or otherwiseaffecting the radiation generated by one or more of the light sources.

In particular, in one implementation, the user interface 118 mayconstitute one or more switches (e.g., a standard wall switch) thatinterrupt power to the processor 102. In one aspect of thisimplementation, the processor 102 is configured to monitor the power ascontrolled by the user interface, and in turn control one or more of thelight sources 104A, 104B, 104C and 104D based at least in part on aduration of a power interruption caused by operation of the userinterface. As discussed above, the processor may be particularlyconfigured to respond to a predetermined duration of a powerinterruption by, for example, selecting one or more pre-programmedcontrol signals stored in memory, modifying control signals generated byexecuting a lighting program, selecting and executing a new lightingprogram from memory, or otherwise affecting the radiation generated byone or more of the light sources.

LED based lighting systems may be preprogrammed with several lightingroutines for use in a non-networked mode. For example, the switches onthe lighting device may be set such that the lighting device produces asolid color, a program that slowly changes the color of the illuminationthroughout the visible spectrum over a few minutes, or a programdesigned to change the illumination characteristics quickly or evenstrobe the light. Generally, the switches used to set the address of thelighting system may also be used to set the system into a preprogrammednon-networked lighting control mode. Each lighting control programs mayalso have adjustable parameters that are adjusted by switch settings.All of these functions can also be set using a programming deviceaccording to the principles of the invention. For example, a userinterface may be provided in the programming device to allow theselection of a program in the lighting system, adjust a parameter of aprogram in the lighting system, set a new program in the lightingsystem, or make another setting in the lighting system. By communicatingto the lighting system through a programming device according to theprinciples of the invention, a program could be selected and anadjustable parameter could be set. The lighting device can then executethe program without the need of setting switches. Another problem withsetting switches for such a program selection is that the switches donot provide an intuitive user interface. The user may have to look to atable in a manual to find the particular switch setting for a particularprogram, whereas a programming device according to the principles of theinvention may contain a user interface screen. The user interface maydisplay information relating to a program, a program parameter or otherinformation relating to the illumination device. The programmer may readinformation from the illumination apparatus and provide this informationof the user interface screen.

FIG. 1 also illustrates that the lighting unit 100 may be configured toreceive one or more signals 122 from one or more other signal sources124. In one implementation, the processor 102 of the lighting unit mayuse the signal(s) 122, either alone or in combination with other controlsignals (e.g., signals generated by executing a lighting program, one ormore outputs from a user interface, etc.), so as to control one or moreof the light sources 104A, 104B, 104C and 104D in a manner similar tothat discussed above in connection with the user interface.

By way of example, a lighting unit 100 may also include sensors and ortransducers and or other signal generators (collectively referred tohereinafter as sensors) that serve as signal sources 124. The sensorsmay be associated with the processor 102 through wired or wirelesstransmission systems. Much like the user interface and network controlsystems, the sensor(s) may provide signals to the processor and theprocessor may respond by selecting new LED control signals from memory114, modifying LED control signals, generating control signals, orotherwise change the output of the LED(s).

Examples of the signal(s) 122 that may be received and processed by theprocessor 102 include, but are not limited to, one or more audiosignals, video signals, power signals, various types of data signals,signals representing information obtained from a network (e.g., theInternet), signals representing some detectable/sensed condition,signals from lighting units, signals consisting of modulated light, etc.In various implementations, the signal source(s) 124 may be locatedremotely from the lighting unit 100, or included as a component of thelighting unit. For example, in one embodiment, a signal from onelighting unit 100 could be sent over a network to another lighting unit100.

Some examples of a signal source 124 that may be employed in, or used inconnection with, the lighting unit 100 of FIG. 1 include any of avariety of sensors or transducers that generate one or more signals 122in response to some stimulus. Examples of such sensors include, but arenot limited to, various types of environmental condition sensors, suchas thermally sensitive (e.g., temperature, infrared) sensors, humiditysensors, motion sensors, photosensors/light sensors (e.g., sensors thatare sensitive to one or more particular spectra of electromagneticradiation), sound or vibration sensors or other pressure/forcetransducers (e.g., microphones, piezoelectric devices), and the like.

Additional examples of a signal source 124 include variousmetering/detection devices that monitor electrical signals orcharacteristics (e.g., voltage, current, power, resistance, capacitance,inductance, etc.) or chemical/biological characteristics (e.g., acidity,a presence of one or more particular chemical or biological agents,bacteria, etc.) and provide one or more signals 122 based on measuredvalues of the signals or characteristics. Yet other examples of a signalsource 124 include various types of scanners, image recognition systems,voice or other sound recognition systems, artificial intelligence androbotics systems, and the like. A signal source 124 could also be alighting unit 100, a processor 102, or any one of many available signalgenerating devices, such as media players, MP3 players, computers, DVDplayers, CD players, television signal sources, camera signal sources,microphones, speakers, telephones, cellular phones, instant messengerdevices, SMS devices, wireless devices, personal organizer devices, andmany others.

In one embodiment, the lighting unit 100 shown in FIG. 1 also mayinclude one or more optical facilities 130 to optically process theradiation generated by the light sources 104A, 104B, 104C and 104D. Forexample, one or more optical facilities may be configured so as tochange one or both of a spatial distribution and a propagation directionof the generated radiation. In particular, one or more opticalfacilities may be configured to change a diffusion angle of thegenerated radiation. In one aspect of this embodiment, one or moreoptical facilities 130 may be particularly configured to variably changeone or both of a spatial distribution and a propagation direction of thegenerated radiation (e.g., in response to some electrical and/ormechanical stimulus). Examples of optical facilities that may beincluded in the lighting unit 100 include, but are not limited to,reflective materials, refractive materials, translucent materials,filters, lenses, mirrors, and fiber optics. The optical facility 130also may include a phosphorescent material, luminescent material, orother material capable of responding to or interacting with thegenerated radiation.

As also shown in Fig; 1, the lighting unit 100 may include one or morecommunication ports 120 to facilitate coupling of the lighting unit 100to any of a variety of other devices. For example, one or morecommunication ports 120 may facilitate coupling multiple lighting unitstogether as a networked lighting system, in which at least some of thelighting units are addressable (e.g., have particular identifiers oraddresses) and are responsive to particular data transported across thenetwork. The lighting unit 100 may also include a communication port 120adapted to communicate with a programming device. The communication portmay be adapted to receive data through wired or wireless transmission.In an embodiment of the invention, information received through thecommunication port 120 may relate to address information and thelighting unit 100 may be adapted to receive and then store the addressinformation in the memory 114. The lighting unit 100 may be adapted touse the stored address as its address for use when receiving data fromnetwork data. For example, the lighting unit 100 may be connected to anetwork where network data is communicated. The lighting unit 100 maymonitor the data communicated on the network and respond to data it‘hears’ that correspond to the address stored in the lighting systems100 memory 114. The memory 114 may be any type of memory including, butnot limited to, non-volatile memory. A person skilled in the art wouldappreciate that there are many systems and methods for communicating toaddressable lighting fixtures through networks (e.g. U.S. Pat. No.6,016,038) and the present invention is not limited to a particularsystem or method.

In an embodiment, the lighting unit 100 may be adapted to select a givenlighting program, modify a parameter of a lighting program, or otherwisemake a selection or modification or generate certain lighting controlsignals based on the data received from a programming device.

In particular, in a networked lighting system environment, as discussedin greater detail further below (e.g., in connection with FIG. 2), asdata is communicated via the network, the processor 102 of each lightingunit coupled to the network may be configured to be responsive toparticular data (e.g., lighting control commands) that pertain to it(e.g., in some cases, as dictated by the respective identifiers of thenetworked lighting units). Once a given processor identifies particulardata intended for it, it may read the data and, for example, change thelighting conditions produced by its light sources according to thereceived data (e.g., by generating appropriate control signals to thelight sources). In one aspect, the memory 114 of each lighting unitcoupled to the network may be loaded, for example, with a table oflighting control signals that correspond with data the processor 102receives. Once the processor 102 receives data from the network, theprocessor may consult the table to select the control signals thatcorrespond to the received data, and control the light sources of thelighting unit accordingly.

In one aspect of this embodiment, the processor 102 of a given lightingunit, whether or not coupled to a network, may be configured tointerpret lighting instructions/data that are received in a DMX protocol(as discussed, for example, in U.S. Pat. Nos. 6,016,038 and 6,211,626),which is a lighting command protocol conventionally employed in thelighting industry for some programmable lighting applications. However,it should be appreciated that lighting units suitable for purposes ofthe present invention are not limited in this respect, as lighting unitsaccording to various embodiments may be configured to be responsive toother types of communication protocols so as to control their respectivelight sources.

In one embodiment, the lighting unit 100 of FIG. 1 may include and/or becoupled to one or more power sources 108. In various aspects, examplesof power source(s) 108 include, but are not limited to, AC powersources, DC power sources, batteries, solar-based power sources,thermoelectric or mechanical-based power sources and the like.Additionally, in one aspect, the power source(s) 108 may include or beassociated with one or more power conversion devices that convert powerreceived by an external power source to a form suitable for operation ofthe lighting unit 100.

While not shown explicitly in FIG. 1, the lighting unit 100 may beimplemented in any one of several different structural configurationsaccording to various embodiments of the present invention. For example,a given lighting unit may have any one of a variety of mountingarrangements for the light source(s), enclosure/housing arrangements andshapes to partially or fully enclose the light sources, and/orelectrical and mechanical connection configurations. In particular, alighting unit may be configured as a replacement or “retrofit” to engageelectrically and mechanically in a conventional socket or fixturearrangement (e.g., an Edison-type screw socket, a halogen fixturearrangement, a fluorescent fixture arrangement, etc.).

Additionally, one or more optical elements as discussed above may bepartially or fully integrated with an enclosure/housing arrangement forthe lighting unit. Furthermore, a given lighting unit optionally may beassociated with (e.g., include, be coupled to and/or packaged togetherwith) various other components (e.g., control circuitry such as theprocessor and/or memory, one or more sensors/transducers/signal sources,user interfaces, displays, power sources, power conversion devices,etc.) relating to the operation of the light source(s).

FIG. 2 illustrates an example of a networked lighting system 200according to one embodiment of the present invention. In the embodimentof FIG. 2, a number of lighting units 100, similar to those discussedabove in connection with FIG. 1, are coupled together to form thenetworked lighting system. It should be appreciated, however, that theparticular configuration and arrangement of lighting units shown in FIG.2 is for purposes of illustration only, and that the invention is notlimited to the particular system topology shown in FIG. 2.

Thus, lighting units 100 be associated with a network such that thelighting unit 100 responds to network data. For example, the processor102 may be an addressable processor that is associated with a network.Network data may be communicated through a wired or wireless network andthe addressable processor may be ‘listening’ to the data stream forcommands that pertain to it. Once the processor ‘hears’ data addressedto it, it may read the data and change the lighting conditions accordingto the received data. For example, the memory 114 in the lighting unit100 may be loaded with a table of lighting control signals thatcorrespond with data the processor 102 receives. Once the processor 102receives data from a network, user interface, or other source, theprocessor may select the control signals that correspond to the data andcontrol the LED(s) accordingly. The received data may also initiate alighting program to be executed by the processor 102 or modify alighting program or control data or otherwise control the light outputof the lighting unit 100.

Additionally, while not shown explicitly in FIG. 2, it should beappreciated that the networked lighting system 200 may be configuredflexibly to include one or more user interfaces, as well as one or moresignal sources such as sensors/transducers. For example, one or moreuser interfaces and/or one or more signal sources such assensors/transducers (as discussed above in connection with FIG. 1) maybe associated with any one or more of the lighting units of thenetworked lighting system 200. Alternatively (or in addition to theforegoing), one or more user interfaces and/or one or more signalsources may be implemented as “stand alone” components in the networkedlighting system 200. Whether stand alone components or particularlyassociated with one or more lighting unit 100, these devices may be“shared” by the lighting units of the networked lighting system. Stateddifferently, one or more user interfaces and/or one or more signalsources such as sensors/transducers may constitute “shared resources” inthe networked lighting system that may be used in connection withcontrolling any one or more of the lighting units of the system.

As shown in the embodiment of FIG. 2, the lighting system 200 mayinclude one or more lighting unit controllers (hereinafter “LUCs”) 208A,208B, 208C and 208D, wherein each LUC is responsible for communicatingwith and generally controlling one or more lighting unit 100 coupled toit. Although FIG. 2 illustrates three lighting unit 100 coupled in aserial fashion to a given LUC, it should be appreciated that theinvention is not limited in this respect, as different numbers oflighting unit 100 may be coupled to a given LUC in a variety ofdifferent configurations using a variety of different communicationmedia and protocols.

In the system of FIG. 2, each LUC in turn may be coupled to a centralcontroller 202 that is configured to communicate with one or more LUCs.Although FIG. 2 shows three LUCs coupled to the central controller 202via a switching or coupling device 204, it should be appreciated thataccording to various embodiments, different numbers of LUCs may becoupled to the central controller 202. Additionally, according tovarious embodiments of the present invention, the LUCs and the centralcontroller may be coupled together in a variety of configurations usinga variety of different communication media and protocols to form thenetworked lighting system 200. Moreover, it should be appreciated thatthe interconnection of LUCs and the central controller, and theinterconnection of lighting units to respective LUCs, may beaccomplished in different manners (e.g., using different configurations,communication media, and protocols).

For example, according to one embodiment of the present invention, thecentral controller 202 shown in FIG. 2 may by configured to implementEthernet-based communications with the LUCs, and in turn the LUCs may beconfigured to implement DMX-based communications with the lighting unit100. In particular, in one aspect of this embodiment, each LUC may beconfigured as an addressable Ethernet-based controller and accordinglymay be identifiable to the central controller 202 via a particularunique address (or a unique group of addresses) using an Ethernet-basedprotocol. In this manner, the central controller 202 may be configuredto support Ethernet communications throughout the network of coupledLUCs, and each LUC may respond to those communications intended for it.In turn, each LUC may communicate lighting control information to one ormore lighting units coupled to it, for example, via a DMX protocol,based on the Ethernet communications with the central controller 202.

More specifically, according to one embodiment, the LUCs 208A, 208B,208C and 208D shown in FIG. 2 may be configured to be “intelligent” inthat the central controller 202 may be configured to communicate higherlevel commands to the LUCs that need to be interpreted by the LUCsbefore lighting control information can be forwarded to the lightingunit 100. For example, a lighting system operator may want to generate acolor changing effect that varies colors from lighting unit to lightingunit in such a way as to generate the appearance of a propagatingrainbow of colors (“rainbow chase”), given a particular placement oflighting units with respect to one another. In this example, theoperator may provide a simple instruction to the central controller 202to accomplish this, and in turn the central controller may communicateto one or more LUCs using an Ethernet-based protocol high-level commandto generate a “rainbow chase.” The command may contain timing,intensity, hue, saturation or other relevant information, for example.When a given LUC receives such a command, it may then interpret thecommand so as to generate the appropriate lighting control signals whichit then communicates using a DMX protocol via any of a variety ofsignaling techniques (e.g., PWM) to one or more lighting units that itcontrols.

It should again be appreciated that the foregoing example of usingmultiple different communication implementations (e.g., Ethernet/DMX) ina lighting system according to one embodiment of the present inventionis for purposes of illustration only, and that the invention is notlimited to this particular example.

FIG. 3 illustrates a programming device 300 in communicative associationwith a lighting unit 100. The programming device 300 may include aprocessor 302, a user interface 304 associated with the processor 302, acommunication port 306 in association with the processor 302, and memory308 associated with the processor 302. The communication port 306 may bearranged to communicate a data signal to the lighting unit 100 and thelighting unit 100 may be adapted to receive the data signal. Forexample, the communication port 306 may be arranged to communicate datavia wired transmission and the communication port 120 of the lightingunit 100 may be arranged to receive the wired transmission. Likewise,the communication ports may be arranged to communicate through wirelesstransmission.

The programming device processor 302 may be associated with a userinterface 304 such that the user interface 304 can be used to generatean address in the processor 302. The user interface 304 may be used tocommunicate a signal to the processor and the processor may, in turn,generate an address and or select an address from the memory 308. In anembodiment, the user interface may be used to generate or select astarting address and the programming device may then be arranged toautomatically generate the next address. For example, a user may selecta new address by making a selection on the user interface and then theaddress may be communicated to a lighting unit 100. Following thetransmission of the address a new address may be selected or generatedto be transmitted to the next lighting unit 100. Of course the actualtiming of the selection and or generation of the new address is notcritical and may actually be generated prior to the transmission of theprevious address or at any other appropriate time. This method ofgenerating addresses may be useful in situations where the user wants toaddress more than one lighting systems 100. For example, the user mayhave a row of one hundred lighting systems 100 and may desire the firstsuch lighting system include the address number one thousand. The usermay select the address one thousand on the programming device and causethe programming device to communicate the address to the lightingsystem. Then the programming device may automatically generate the nextaddress in the desired progression (e.g. one thousand one). This newlygenerated address (e.g. one thousand one) may then be communicated tothe next lighting system in the row. This eliminates the repeatedselection of the new addresses and automates one more step for the user.The addresses may be selected/generated in any desired pattern (e.g.incrementing by two, three, etc.).

The programming device may be arranged to store a selected/generatedaddress in its memory to be recalled later for transmission to alighting system. For example, a user may have a number of lightingsystems to program and he may want to preprogram the memory of theprogramming device with a set of addresses because he knows in advancethe lighting systems he is going to program. He may have a layoutplanned and it may be desirable to select an address, store it inmemory, and then select a new address to be place in memory. This systemof selecting and storing addresses could place a long string ofaddresses in memory. Then he could begin to transmit the addressinformation to the lighting systems in the order in which he loaded theaddresses.

The programming device 300 may include a user interface 304 and the userinterface may be associated with the processor 302. The user interface304 may be an interface, button, switch, dial, slider, encoder, analogto digital converter, digital to analog converter, digital signalgenerator, or other user interface. The user interface 304 may becapable of accepting address information, program information, lightingshow information, or other information or signals used to control anillumination device. The device may communicate with a lighting deviceupon receipt of user interface information. The user interfaceinformation may also be stored in memory and be communicated from thememory to an illumination device. The user interface 304 may alsocontain a screen for the displaying of information. The screen may be ascreen, LCD, plasma screen, backlit display, edgelit display, monochromescreen, color screen, is screen, or any other type of display.

Many of the embodiments illustrated herein involve setting an address ina lighting unit 100. However, a method or system according to theprinciples of the present invention may involve selecting a mode,setting, program or other setting in the lighting unit 100. Anembodiment may also involve the modification of a mode, setting, programor other setting in the lighting unit 100. In an embodiment, aprogramming device may be used to select a preprogrammed mode in thelighting unit 100. For example, a user may select a mode using aprogramming device and then communicate the selection to the lightingunit 100 wherein the lighting unit 100 would then select thecorresponding mode. The programming device 300 may be preset with modescorresponding to the modes in the lighting unit 100. For example, thelighting unit 100 may have four preprogrammed modes: color wash, staticred, static green, static blue, and random color generation. Theprogramming device 300 may have the same four mode selections availablesuch that the user can make the selection on the programming device 300and then communicate the selection to the lighting unit 100. Uponreceipt of the selection, the lighting unit 100 may select thecorresponding mode from memory for execution by the processor 102. In anembodiment, the programming device may have a mode indicator stored inits memory such that the mode indicator indicates a particular mode orlighting program or the like. For example, the programming device mayhave a mode indicator stored in memory indicating the selection andcommunication of such a mode indicator would initiate or set a mode inthe lighting system corresponding to the indicator. An embodiment of thepresent invention may involve using the programming device 300 to readthe available selections from the lighting systems memory 114 and thenpresent the available selections to the user. The user can then selectthe desired mode and communicate the selection back to the lighting unit100. In an embodiment, the lighting system may receive the selection andinitiate execution of the corresponding mode.

In an embodiment, the programming device 300 may be used to download alighting mode, program, setting or the like to a lighting unit 100. Thelighting unit 100 may store the lighting mode in its memory 114. Thelighting unit 100 may be arranged to execute the mode upon download andor the mode may be available for selection at a later time. For example,the programming device 300 may have one or more lighting programs storedin its memory 308. A user may select one or more of the lightingprograms on the programming device 300 and then cause the programmingdevice 300 to download the selected program(s) to a lighting unit 100.The lighting unit 100 may then store the lighting program(s) in itsmemory 114. The lighting unit 100 and or downloaded program(s) may bearranged such that the lighting system's processor 102 executes one ofthe downloaded programs automatically.

As used herein, the terms “wired” transmission and or communicationshould be understood to encompass wire, cable, optical, or any othertype of communication where the devices are physically connected. Asused herein, the terms “wireless” transmission and or communicationshould be understood to encompass acoustical, RF, microwave, IR, and allother communication and or transmission systems were the devices are notphysically connected.

Referring to FIG. 4, various configurations can be provided for lightingunits 100, in each case with an optional communications facility 120.Configurations include a linear configuration 404 (which may becurvilinear 408 in embodiments), a circular configuration 402, an ovalconfiguration, or a collection of various configurations 402, 404, etc.Lighting unit 100 can also include a wide variety of colors of LED, invarious mixtures, including red, green, and blue LEDs to produce a colormix, as well as one or more other LEDs to create varying colors andcolor temperatures of white light. For example, red, green and blue canbe mixed with amber, white, UV, orange, IR or other colors of LED. Amberand white LEDs can be mixed to offer varying colors and colortemperatures of white. Any combination of LED colors can produce a gamutof colors, whether the LEDs are red, green, blue, amber, white, orange,UV, or other colors. The various embodiments described throughout thisspecification encompass all possible combinations of LEDs in lightingunit 100, so that light of varying color, intensity, saturation andcolor temperature can be produced on demand under control of a processor102. Combinations of LEDs with other mechanisms, such as phosphors, arealso encompassed herein.

Although mixtures of red, green and blue have been proposed for lightdue to their ability to create a wide gamut of additively mixed colors,the general color quality or color rendering capability of such systemsare not ideal for all applications. This is primarily due to the narrowbandwidth of current red, green and blue emitters. However, wider bandsources do make possible good color rendering, as measured, for example,by the standard CRI index. In some cases this may require LED spectraloutputs that are not currently available. However, it is known thatwider-band sources of light will become available, and such wider-bandsources are encompassed as sources for lighting unit 100 describedherein.

Additionally, the addition of white LEDs (typically produced through ablue or UV LED plus a phosphor mechanism) does give a ‘better’ white itis still limiting in the color temperature that is controllable orselectable from such sources.

The addition of white to a red, green and blue mixture may not increasethe gamut of available colors, but it can add a broader-band source tothe mixture. The addition of an amber source to this mixture can improvethe color still further by ‘filling in’ the gamut as well.

This combinations of light sources as lighting unit 100 can help fill inthe visible spectrum to faithfully reproduce desirable spectrums oflights. These include broad daylight equivalents or more discretewaveforms corresponding to other light sources or desirable lightproperties. Desirable properties include the ability to remove pieces ofthe spectrum for reasons that may include environments where certainwavelengths are absorbed or attenuated. Water, for example tends toabsorb and attenuate most non-blue and non-green colors of light, sounderwater applications may benefit from lights that combine blue andgreen sources for lighting unit 100.

Amber and white light sources can offer a color temperature selectablewhite source, wherein the color temperature of generated light can beselected along the black body curve by a line joining the chromaticitycoordinates of the two sources. The color temperature selection isuseful for specifying particular color temperature values for thelighting source.

Orange is another color whose spectral properties in combination with awhite LED-based light source can be used to provide a controllable colortemperature light from a lighting unit 100.

The combination of white light with light of other colors as lightsources for lighting unit 100 can offer multi-purpose lights for manycommercial and home applications, such as in pools, spas, automobiles,building interiors (commercial and residential), indirect lightingapplications, such as alcove lighting, commercial point of purchaselighting, merchandising, toys, beauty, signage, aviation, marine,medical, submarine, space, military, consumer, under cabinet lighting,office furniture, landscape, residential including kitchen, hometheater, bathroom, faucets, dining rooms, decks, garage, home office,household products, family rooms, tomb lighting, museums, photography,art applications, and many others.

Referring still to FIG. 4, lighting units 100 can be arranged in manydifferent forms. Thus, one or more light sources 104A–104D can bedisposed with a processor 102 in a housing. The housing can take variousshapes, such as one that resembles a point source 402, such as a circleor oval. Such a point source 402 can be located in a conventionallighting fixture, such as lamp or a cylindrical fixture. Lighting units100 can be configured in substantially linear arrangements, either bypositioning point sources 402 in a line, or by disposing light sources104A–104D substantially in a line on a board located in a substantiallylinear housing, such as a cylindrical housing. A linear lighting unit404 can be placed end-to-end with other linear elements 404 or elementsof other shapes to produce longer linear lighting systems comprised ofmultiple lighting units 100 in various shapes. A housing can be curvedto form a curvilinear lighting unit 408. Similarly, junctions can becreated with branches, “Ts,” or “Ys” to created a branched lighting unit410. A bent lighting unit 412 can include one or more “V” elements.Combinations of various configurations of point source 402, linear 404,curvilinear 408, branched 410 and bent 412 lighting units can be used tocreate any shape of lighting system, such as one shaped to resemble aletter, number, symbol, logo, object, structure, or the like. Anembodiment of a lighting unit 100 suitable for being joined to otherlighting units 100 in different configurations is disclosed below inconnection with FIG. 54 and subsequent figures.

FIG. 5 shows a simple three-dimensional configuration 500 made from aplurality of linear lighting units 404. Thus, linear lighting units 404can be used to create three-dimensional structures and objects, or tooutline existing structures and objects when disposed along the lines ofsuch structures and objects. Many different displays, objects,structures, and works of art can be created using linear lighting unitsas a medium.

FIG. 6 shows a pyramid configuration 600 consisting of linear lightingunits 404. The pyramid 600 is one of many different possibleconfigurations.

FIG. 7 shows a number of linear lighting units 404 disposed in atwo-dimensional array 700. Lighting units 404 can thus be placedend-to-end to create an array of arbitrarily large size. Lighting units404 can be of various sizes, such as one foot and four foot segments, orcan be uniform in size. The individual linear lighting units 404 (andthe light sources 104A–104D disposed in each of the linear lightingunits 404) can be individually controlled to provide color, hue,intensity, saturation, and color temperature changes. Thus, the array700 can present any combination of colors, based on the on and offstate, color and intensity of individual linear lighting units 404.

FIG. 8 shows the array 700 of linear lighting units 404, with certainunits 404 turned on. The units 404 that are turned on can show the samecolor, or different colors, under control of the operator based on theirindividual addresses. As with all lighting units 100 disclosed in thisspecification, a wide range of controls and addressing techniques can beused to accomplish individual control of the elements of the array 700.

FIG. 9 shows that an effect can be created by generating differentlighting signals over time. The arrow 902 shows that as time passes(moving downward in FIG. 9), different elements 404 are triggered toturn on. FIG. 9 could represent a moving element 404, which travels downand across the array and back., apparently following the path of thearrow 904 in FIG. 9 Alternatively, FIG. 9 can represent a single line oflinear lighting units 404 over time. Thus, with the passage of eachperiod of time, the element that is lit travels to the right, then backto the left. As a result, a particular color of light can “bounce” backand forth between the ends of a row of linear lighting elements 404, orit can “bounce” around the “walls” of an array. The lit element can begiven attributes, such as simple harmonic motion, a pendulum effect, orthe like. With a proper algorithm, the “bounce” can be made to obeyrules that appear to give it “friction” or “gravity,” (causing thebounce effect to slow down) or “anti-gravity” (causing the bounce effectto accelerate). Elements can also be designed to follow each other, sothat a color chases other colors along the line, or through the array,in a “color chasing rainbow” effect. Such effect can be played out withother combinations of elements, such as curvilinear element 408,branched elements 410, or bent elements 412, as well as with pointsources 402.

It should be noted that any shape or element may substantially resemblea point source if viewed from a great enough distance. For example,substantially linear elements can appear like “pixels” on the side of abuilding, if viewed from a great enough distance.

In some cases lighting systems consisting of various configurations oflighting units 100 may be very large in scale. The design and control oflarge systems of multiple lighting units 100 or other devices generallybecomes increasingly complex as the scale of the system (i.e., number ofdevices coupled to the system) grows. One example of such a system is alighting system of controllable lighting devices coupled together as anetwork. Such systems of networked lighting devices can producecoordinated color-changing lighting effects for a variety ofapplications. As the scale of such systems grow, system design,configuration and control in some cases present appreciable challengesto system designers, installers and operators.

Applicants generally have recognized and appreciated that complexsystems of multiple devices, and in particular complex lighting networksof multiple controllable lighting devices, are in some cases challengingto design, install, configure and control. Accordingly, one embodimentof the present invention relates generally to methods and apparatus forimproving various features of such systems to facilitate one or more ofsystem design, installation, configuration and control.

The various concepts disclosed herein relating to the present inventionmay be implemented generally in systems of multiple devices in which anyof several different types of devices are employed, including, but notlimited to, different types of lighting-related devices as well as othernon-lighting-related devices. In various embodiments, such devices mayinclude, for example, one or more LED-based light sources, other typesof illumination sources (e.g., conventional incandescent, fluorescent,and halogen light sources, just to name a few), combinations ofdifferent types of illumination sources, and combinations of bothlighting and non-lighting related devices.

More specifically, one embodiment of the present invention is directedto a system of multiple controllable lighting units coupled together inany of a variety of configurations to form a networked lighting system.In one aspect of this embodiment, each lighting unit has one or moreunique identifiers (e.g., a serial number, a network address, etc.) thatmay be pre-programmed at the time of manufacture and/or installation ofthe lighting unit, wherein the identifiers facilitate the communicationof information between respective lighting units and one or morelighting system controllers. In another aspect of this embodiment, eachlighting unit may be flexibly deployed in a variety of physicalconfigurations with respect to other lighting units of the system,depending on the needs of a given installation.

One issue that may arise in such a system of multiple controllablelighting units is that upon deployment of the lighting units for a giveninstallation, it is in some cases challenging to configure one or moresystem controllers a priori with some type of mapping information thatprovides a relationship between the identifier for each lighting unitand its physical location relative to other lighting units in thesystem. In particular, a lighting system designer/installer may desireto purchase a number of individual lighting units each pre-programmedwith a unique identifier (e.g., serial number), and then flexibly deployand interconnect the lighting units in any of a variety ofconfigurations to implement a networked lighting system. At some pointbefore operation, however, the system needs to know the identifiers ofthe controllable lighting units deployed, and preferably their physicallocation relative to other units in the system, so that each unit may beappropriately controlled to realize system-wide lighting effects.

One way to accomplish this is to have one or more system operatorsand/or programmers manually create one or more custom systemconfiguration files containing the individual identifiers for eachlighting unit and corresponding mapping information that provides somemeans of identifying the relative physical locations of lighting unitsin the system. As the number of lighting units deployed in a givensystem increases and the physical geometry of the system becomes morecomplex, however, Applicants have recognized and appreciated that thisprocess quickly can become unwieldy.

In view of the foregoing, one embodiment of the invention is directed tomethods and apparatus that facilitate a determination of the respectiveidentifiers of controllable lighting units coupled together to form anetworked lighting system. In one aspect of this embodiment, eachlighting unit of the system has a pre-programmed multiple-bit binaryidentifier, and a determination algorithm is implemented to iterativelydetermine (i.e., “learn”) the identifiers of all lighting units thatmake up the system. In various aspects, such determination/learningalgorithms may employ a variety of detection schemes during theidentifier determination process, including, but not limited to,monitoring a power drawn by lighting units at particular points of theprocess, and/or monitoring an illumination state of one or more lightingunits at particular points of the determination process.

Once the collection of identifiers for all lighting units of the systemis determined (or manually entered), another embodiment of the presentinvention is directed to facilitating the compilation of mappinginformation that relates the identified lighting units to their relativephysical locations in the installation. In various aspects of thisembodiment, the mapping information compilation process may befacilitated by one or more graphics user interfaces that enable a systemoperator and/or programmer to conveniently configure the system based oneither learned and/or manually entered identifiers of the lightingunits, as well as one or more graphic representations of the physicallayout of the lighting units relative to one another.

Once all lighting unit identifiers are known and mapping information forthe system is compiled, yet another embodiment of the invention isdirected to the control of such a lighting system using various commandhierarchies in conjunction with various system configurations andcommunication protocols. For example, one embodiment of the invention isdirected to methods and apparatus that facilitate the communication of“high level” lighting commands and/or other programming informationthroughout some portion of the networked lighting system via anEthernet-based implementation, while the “lower level” actual control ofindividual lighting units is accomplished using a DMX-basedimplementation (which is conventionally used in some professionallighting applications). In one aspect of this embodiment, a number oflighting unit controllers are deployed throughout the networked lightingsystem to communicate with one or more central system controllers via anEthernet-based protocol. Such lighting unit controllers subsequentlyprocess the Ethernet-based information to provide DMX-based controlsignals to one or more lighting units.

To facilitate the following discussion, a lighting system includingmultiple LED-based light sources (hereinafter referred to generically as“lighting units”) is described as one exemplary system in which variousconcepts according to the present invention may be implemented. Asdiscussed above, however, it should be appreciated that the invention isnot limited to implementation and application with such LED-based lightsources, and that other implementations and applications are possiblewith other types of devices (i.e., both lighting andnon-lighting-related devices).

FIG. 10 illustrates an example of a general method for determininglighting unit identifiers according to one embodiment of the presentinvention. As shown in FIG. 10, the method may include a first step 1002of providing a lighting unit having an identifier, a second step 1004 ofproviding address identification information to the lighting unit, athird step 1008 of causing the lighting unit to read the addressidentification information, compare the address identificationinformation to at least a portion of the identifier, and causing thelighting unit to respond to the address identification information byeither energizing or de-energizing one or more light sources of thelighting unit, and a fourth step 1010 of monitoring the power consumedby the lighting unit to provide an indication of the comparison.

According to one aspect of this embodiment, each LUC 208A, 208B, and208C shown in FIG. 2 includes a power sensing module that provides oneor more indications to the LUC when power is being drawn by one or morelighting units coupled to the LUC (i.e., when one or more light sourcesof one or more of the lighting units is energized).

FIG. 11 shows a block diagram of a portion of a generic LUC 208 thatincludes a LUC processor 1102 and a power sensing module 1114. Asindicated in FIG. 11, the power sensing module 1114 may be coupled to apower supply input connection 1112 and may in turn provide power to oneor more lighting units coupled to the LUC via a power output connection1110. The power sensing module 1114 also may provide one or more outputsignals 1116 to the processor 1102, and the processor in turn maycommunicate to the central controller 202 information relating to powersensing, via the connection 1108.

In one aspect of the LUC shown in FIG. 11, the power sensing module1114, together with the processor 1102, may be adapted to determinemerely when any power is being consumed by any of the lighting unitscoupled to the LUC, without necessarily determining the actual powerbeing drawn or the actual number of units drawing power. As discussedfurther below in connection with FIG. 13, such a “binary” determinationof power either being consumed or not consumed by the collection oflighting units coupled to the LUC facilitates an identifierdetermination/learning algorithm (e.g., that may be performed by the LUCprocessor 1102 or the central controller 202) according to oneembodiment of the invention. In other aspects, the power sensing module1114 and the processor 1102 may be adapted to determine, at leastapproximately, and actual power drawn by the lighting units at any giventime. If the average power consumed by a single lighting unit is known apriori, the number of units consuming power at any given time can thenbe derived from such an actual power measurement. Such a determinationis useful in other embodiments of the invention, as discussed furtherbelow.

FIG. 12 shows an example of a portion of a circuit implementation of aLUC including a power sensing module 1114 according to one embodiment ofthe invention. In FIG. 12, the power supply input connection is shown asa positive terminal 1112A and a ground terminal 1112B. Similarly, thepower output connection to the lighting units is shown as a positiveterminal 1110A and a ground terminal 1110B. In FIG. 12, the powersensing module 1114 is implemented essentially as a current sensorinterposed between the ground terminal 1112B of the power supply inputconnection and the ground terminal 1110B of the power output connection.The current sensor includes a sampling resistor R3 to develop a sampledvoltage based on power drawn from the power output connection. Thesampled voltage is then amplified by operational amplifier U6 to providean output signal 1116 to the processor 1102 indicating that power isbeing drawn.

In one aspect of the embodiment shown in FIG. 12, the power input supplyconnection 1112A and 1112B may provide a supply voltage of approximately20 volts, and the power sensing module 1114 may be designed to generatean output signal 1116 of approximately 2 volts per amp of load current(i.e., a gain of 2 V/A) drawn by the group of lighting units coupled tothe LUC. In other aspects, the processor 1102 may include an A/Dconverter having a detection resolution on the order of approximately0.02 volts, and the lighting units may be designed such that eachlighting unit may draw approximately 0.1 amps of current when energized,resulting in a minimum of approximately a 0.2 volt output signal 1116(based on the 2 V/A gain discussed above) when any unit of the group isenergized (i.e., easily resolved by the processor's A/D converter). Inanother aspect, the minimum quiescent current (off-state current, nolight sources energized) drawn by the group of lighting units may bemeasured from time to time, and an appropriate threshold may be set forthe power sensing module 1114, so that the output signal 1116 accuratelyreflects when power is being drawn by the group of lighting units due toactually energizing one or more light sources.

As discussed above, according to one embodiment of the invention, theLUC processor 1102 may monitor the output signal 1116 from the powersensing module 1114 to determine if any power is being drawn by thegroup of lighting units, and use this indication in an identifierdetermination/learning algorithm to determine the collection ofidentifiers of the group of lighting units coupled to the LUC. Forpurposes of illustrating the various concepts related to such analgorithm, the following discussion assumes an example of a unique fourbit binary identifier for each of the lighting units coupled to a givenLUC. It should be appreciated, however, that lighting unit identifiersaccording to the present invention are not limited to four bits, andthat the following example is provided primarily for purposes ofillustration.

FIG. 13 illustrates a binary search tree 1300 based on four bitidentifiers for lighting units, according to one embodiment of theinvention. In FIG. 13, it is assumed that three lighting unit 100 arecoupled to a generic LUC 208, and that the first lighting unit has afirst binary identifier 1302A of one, one, zero, one (1101), the secondlighting unit has a second binary identifier 1302B of one, one, zero,zero (1100), and the third lighting unit has a third binary identifier1302C of one, zero, one, one (1011). These exemplary identifiers areused below to illustrate an example of an identifierdetermination/learning algorithm.

FIG. 14 illustrates a more detailed flow diagram of an identifierdetermination/learning algorithm according to one embodiment of thepresent invention, based on monitoring the power drawn by of one or morelighting units coupled to the LUC. In the algorithm of FIG. 14, thenumber of lighting units coupled to the LUC and the collection ofidentifiers corresponding to the respective units are determined.However, it should be appreciated that no particular determination ismade of which lighting unit has which identifier; stated differently,the algorithm of FIG. 14 does not determine a one-to-one correspondencebetween identifiers and lighting units, but rather merely determines thecollection of identifiers of all of the lighting units coupled to theLUC. According to one embodiment of the invention, such a determinationis sufficient for purposes of subsequently compiling mapping informationregarding the physical locations of the lighting units relative to oneanother.

In the algorithm of FIG. 14, it should also be appreciated that one orboth of a given LUC processor 1102 or the central controller 202 shownin FIG. 2 may be configured to execute the algorithm, and that eitherthe processor or the central controller may include memory to store aflag for each bit of the identifier, which flag may be set and reset atvarious points during the execution of the algorithm, as discussedfurther below. Furthermore, for purposes of explaining the algorithm, itis to be understood that the “first bit” of an identifier refers to thehighest order binary bit of the identifier. In particular, withreference to the example of FIG. 13, the four identifier bits areconsecutively indicated as a first bit 1404, a second bit 1408, a thirdbit 1410, and a fourth bit 1412.

Referring again to the exemplary identifiers and binary tree illustratedin FIG. 13, the algorithm of FIG. 14 essentially implements a completesearch of the binary tree to determine the identifiers of all lightingunits coupled to a given LUC. As indicated in FIG. 14, the algorithmbegins by selecting a first state (either a 1 or a 0) for the highestorder bit 1404 of the identifier, and then sends a global command to allof the lighting units coupled to the LUC to energize one or more oftheir light sources if their respective identifiers have a highest orderbit corresponding to the selected state. Again for purposes ofillustration, it is assumed here that the algorithm initially selectsthe state “1” (indicated with the reference character 1314 in FIG. 13).In response to this command, all of the lighting units energize theirlight sources and, hence, power is drawn from the LUC. It should beappreciated, however, that the algorithm may initially select the state“0” (indicated with the reference character 1318 in FIG. 13); in thepresent case, since no lighting unit has an identifier with a “0” in thehighest order bit 1404, no power would be drawn from the LUC and thealgorithm would respond by setting a flag for this bit, changing thestate of this bit, and by default assume that all of the lighting unitscoupled to the LUC necessarily have a “1” in the highest order bit (asis indeed the case for this example).

As a result of a “1” in the highest order bit having been identified,with reference to FIG. 14, the algorithm adds another bit 1408 with thesame state (i.e., “1”), and then sends a global command to all of thelighting units to energize their light sources if their respectiveidentifiers begin with “11” (i.e., 11XX). As a result of this query,based on the example of FIG. 13, the first and second lighting unitsenergize their light sources and draw power, but the third lighting unitdoes not energize. In any event, some power is drawn, so the algorithmof FIG. 14 then queries if there are any more bits in the identifier. Inthe present example there are more bits, so the algorithm returns toadding another bit 1410 with the same state as the previous bit and thensends a global command to all lighting units to energize their lightsources if their respective identifiers begin with “111” (i.e., 111X).

At this point in the example, no identifiers correspond to this query,and hence no power is drawn from the LUC. Accordingly, the algorithmsets a flag for this third bit 1410, changes the state of the bit (nowto a “0”), and again queries if there are any more bits in theidentifier. In the present example there are more bits, so the algorithmreturns to adding another bit 1412 with the same state as the previousbit (i.e., another “0”) and then sends a global command to all lightingunits to energize their light sources if they have the identifier“1100.”

In response to this query, the second lighting unit energizes its lightsources and hence power is drawn from the LUC. Since there are no morebits in the identifiers, the algorithm has thus learned a first of thethree identifiers, namely, the second identifier 1402B of “1100.” Atthis point, the algorithm checks to see if a flag for the fourth bit1412 has been set. Since no flag yet has been set for this bit, thealgorithm changes the bit state (now to a “1”), and sends a globalcommand to all lighting units to energize their light sources if theyhave the identifier “1101.” In the present example, the first lightingunit energizes its light sources and draws power, indicating that yetanother identifier has been learned by the algorithm, namely, the firstidentifier 1402A of “1101.”

At this point, the algorithm goes back one bit in the identifier (in thepresent example, this is the third bit 1410) and checks to see if a flagwas set for this bit. As pointed out above, indeed the flag for thethird bit was set (i.e., no identifiers corresponded to “111X”). Thealgorithm then checks to see if it has arrived back at the first(highest order) bit 1404 again, and if not, goes back yet another bit(to the second bit 1408). Since no flag has yet been set for this bit(it is currently a “1”), the algorithm changes the state of the secondbit (i.e., to a “0” in the present example), and sends a global commandto all lighting units to energize their light sources if theirrespective identifiers begin with “10” (i.e., 10XX). In the currentexample, the third lighting unit energizes its light sources, and hencepower is drawn. Accordingly, the algorithm then sets the flag for thissecond bit, clears any lower order flags that may have been previouslyset (e.g., for the third or fourth bits 1410 and 1412), and returns toadding another bit 1410 with the same state as the previous bit. Fromthis point, the algorithm executes as described above until ultimatelyit learns the identifier 1402C of the third lighting unit (i.e., 1011),and determines that no other lighting units are coupled to the LUC.

Again, it should be appreciated that although an example of four bitidentifiers was used for purposes of illustration, the algorithm of FIG.14 may be applied similarly to determine identifiers having an arbitrarynumber of bits. Furthermore, it should be appreciated that FIG. 14provides merely one example of an identifier determination/learningalgorithm, and that other methods for determining/learning identifiersmay be implemented according to other embodiments of the invention.

In another embodiment, the lighting unit controller may not include apower monitoring system but the methodology of identifying lighting unitaddresses according to the principles of the present invention may stillbe achieved. For example, rather than monitoring the power consumed byone or more lighting units, a visible interpretation of the individuallighting units may be recorded, either by human intervention or anotherimage capture system such as a camera or video recorder. In this case,the images of the light emitted by the individual lighting units may berecorded for each bit identification and it may not be necessary to goup and down the binary task tree as identified above.

FIG. 15 illustrates a process flow diagram according to the principlesof the present invention for determining lighting unit identifiers basedon observing illumination states of the lighting units. The method mayinvolve the controlling of light from a plurality of lighting units thatare capable of being supplied with addresses (identifiers) 1500. Themethod may comprise the steps of equipping each of the lighting unitswith a processing facility for reading data and providing instructionsto the lighting units to control at least one of the color and theintensity of the lighting units, each processing facility capable ofbeing supplied with an address 1504. For example, the lighting units mayinclude a lighting unit 100 where the processor 102 is capable ofreceiving network data. The processor may receive network data andoperate the LED(s) 104 in a manner consistent with the received data.The processor may read data that is explicitly or implicitly addressedto it or it may respond to all of the data supplied to it. The networkcommands may be specifically targeting a particular lighting unit withan address or group of lighting units with similar addresses or thenetwork data may be communicated to all network devices. A communicationto all network devices may not be addressed but may be a universe orworld style command.

The method may further comprise the step of supplying each processorwith an identifier, the identifier being formed of a plurality of bitsof data 1508. For example, each lighting unit 100 may be associated withmemory 114 (e.g. EPROM) and the memory 114 may contain a serial numberthat is unique to the light or processor. Of course, the setting of theserial number or other identifier may be set through mechanical switchesor other devices and the present invention is not limited by aparticular method of setting the identifier. The serial number may be a32-bit number in EPROM for example.

The method may also comprise sending to a plurality of such processorsan instruction, the instruction being associated with a selected andnumbered bit of the plurality of bits of the identifier, the instructioncausing the processor to select between an “on” state of illuminationand an “off” state of illumination for light sources controlled by thatprocessor, the selection being determined by the comparison between theinstruction and the bit of the identifier corresponding to the number ofthe numbered bit of the instruction 1510. For example, a network commandmay be sent to one or more lighting units in the network of lightingunits. The command may be a global command such that all lighting unitsthat receive the command respond. The network command may instruct theprocessors 102 to read the first bit of data associated with its serialnumber. The processor may then compare the first bit to the instructionsin the network instruction or assess if the bit is a one or a zero. Ifthe bit is a one, the processor may turn the lighting unit on or to aparticular color or intensity. This provides a visual representation ofthe first bit of the serial number. A person or apparatus viewing thelight would understand that the first bit in the serial number is eithera one (e.g. light is on) or a zero (e.g. light is off). The nextinstruction sent to the light may be to read and indicate the setting ofthe second bit of the address. This process can be followed for each bitof the address allowing a person or apparatus to decipher the address bywatching the light sources of the lighting unit turn on and/or offfollowing each command.

The method may further comprise capturing a representation of whichlighting units are illuminated and which lighting units are notilluminated for that instruction 1512. For example, a camera, video orother image capture system may be used to capture the image of thelighting unit(s) following each such network command. Repeating thepreceding two steps, 1510 and 1512, for all numbered bits of theidentifier 1514 allows for the reconstruction of the serial number ofeach lighting unit in the network.

The method may further comprise assembling the identifier for each ofthe lighting units, based on the “on” or “off” state of each bit of theidentifier as captured in the representation 1518. For example, a personcould view the lighting unit's states and record them to decipher thelighting unit's serial number or software can be written to allow theautomatic reading of the images and the reassembly of the serial numbersfrom the images. The software may be used to compare the state of thelighting unit with the instruction to calculate the bit state of theaddress and then proceed to the next image to calculate the next bitstate. The software may be adapted to calculate a plurality or all ofthe bit states of the associated lighting units in the image and thenproceed to the next image to calculate the next bit state. This processcould be used to calculate all of the serial numbers of the lightingunits in the image.

The method may also comprise assembling a correspondence between theknown identifiers (e.g. serial numbers) and the physical locations ofthe lighting units having the identifiers 1520. For example, thecaptured image not only contains lighting unit state information but italso contains lighting unit position information. The positioning may berelative or absolute. For example, the lighting units may be mounted onthe outside of a building and the image may show a particular lightingunit is below the third window from the right on the seventy secondfloor. This lighting unit's position may also be referenced to otherlighting unit positions such that a map can be constructed whichidentifies all of the identifiers (e.g. serial numbers) with a lightingunit and its position. Once these positions and/or lighting units areidentified, network commands can be directed to the particular lightingunits by addressing the commands with the identifier and having thelighting unit respond to data that is addressed to its identifier. Themethod may further comprise controlling the illumination from thelighting units by sending instructions to the desired lighting units atdesired physical locations. Another embodiment may involve sending thenow identified lighting units address information such that the lightingunits store the address information as its address and will respond todata sent to the address. This method may be useful when it is desiredto address the lighting units in some sequential scheme in relation tothe physical layout of the lighting units. For example, the user maywant to have the addresses sequentially increase as the lightingfixtures go from left to right across the face of a building. This maymake authoring of lighting sequences easier because the addresses areassociated with position or progression.

Another aspect of the present invention relates to communicating withlighting units and altering their address information. In an embodiment,a lighting unit controller LUC may be associated with several lightingunits and the controller may know the address information/identifiersfor the lighting units associated with the controller. A user may wantto know the relative position of one lighting unit as compared toanother and may communicate with the controller to energize a lightingunit such that the user can identify its position within aninstallation. For example, the user may use a computer with a display toshow representations of the controller and the lighting units associatedwith the controller. The user may select the controller, using therepresentation on the display, and cause all of the associated lightingunits to energize allowing the user to identify their relative orabsolute positions. A user may also elect to select a lighting unitaddress or representation associated with the controller to identify itsparticular position with the array of other lighting units. The user mayrepeat this process for all the associated lighting unit addresses tofind their relative positions. Then, the user may rearrange the lightingunit representations on the display in an order that is more convenient(e.g. in order of the lighting units actual relative positions such asleft to right). Information relating to the rearrangement may then beused to facilitate future communications with the lighting units. Forexample, the information may be communicated to the controller and thelighting units to generate new ‘working’ addresses for the lightingunits that correspond with the re-arrangement. In another embodiment,the information may be stored in a configuration file to facilitate theproper communication to the lighting units.

FIG. 16 illustrates a flow diagram of a method of determining/compilingmapping information relating to the physical locations of lighting unitsand thereafter communicating to the lighting units, according to oneembodiment of the invention. The method includes the steps of providinga display system 1602; providing a representation of a first and secondlighting unit wherein the representations are associated with a firstaddress 1604; providing a user interface wherein a user can select alighting unit and cause the selected lighting units to energize 1608;selecting a lighting unit to identify its position and repeating thisstep for the other lighting unit 1610; re-arranging the representationsof the first lighting unit and the second lighting unit on the displayusing a user interface 1612; and communicating information to thelighting units relating to the rearrangement to set new system addresses1614. The method may include other steps such as storing informationrelating to the re-arrangement of the representations on a storagemedium. The storage medium may be any electronic storage medium such asa hard drive; CD; DVD; portable memory system or other memory device.The method may also include the step of storing the address informationin a lighting unit as the lighting unit working address.

In an embodiment, once the lighting units have been identified, thelighting unit controller 208 may transmit the address information to acomputer system. The computer system may include a display (e.g., agraphics user interface) where a representation of the lighting unitcontroller 208 is displayed as indicated in FIG. 17 as object 1702. Thedisplay may also provide representations of the lighting unit 100associated with the light controller 208 as indicated in FIG. 17 asobject 1704. In an embodiment, the computer, possibly through a userinterface, may be used to re-arrange the order of the lighting unitrepresentations. For example, a user may click on the lighting unitrepresentation 1702 and all of the lighting units associated with thelighting unit controller may energize to provide the user with aphysical interpretation of the placement of the lighting unit (e.g. theyare located on above the window on the 72^(nd) floor of the building).Then, the user may click on individual lighting unit representations(e.g. 1704A) to identify the physical location of the lighting unitwithin the array of lighting units. As the user identifies the lightingunit locations, the user may rearrange the lighting unit representationson the computer screen such that they represent the ordering in thephysical layout. In an embodiment, this information may be stored to astorage medium. The information may also be used in a configuration filesuch that future communications with the lighting units are directed perthe configuration file. In an embodiment, information relating to therearrangement may be transmitted to the lighting unit controller and new‘working’ addresses may be assigned to the individual lighting units.This may be useful in providing a known configuration of lighting unitaddresses to make the authoring of lighting shows and effects easier.

Another aspect of the present invention relates to systems and methodsof communicating to large-scale networks of lighting units. In anembodiment, the communication to the lighting units originates from acentral controller where information is communicated in high levelcommands to lighting unit controllers. The high level commands are theninterpreted by the lighting unit controllers, and the lighting unitcontrollers generate lighting unit commands. In an embodiment, thelighting unit controller may include its own address such that commandscan be directed to the associated lighting units throughcontroller-addressed information. For example, the central controllermay communicate light controller addressed information that containsinstructions for a particular lighting effect. The lighting unitcontroller may monitor a network for its own address and once heard,read the associated information. The information may direct the lightingunit controller to generate a dynamic lighting effect (e.g. a movingrainbow of colors) and then communicate control signals to itsassociated lighting units to effectuate the lighting effect. In anembodiment, the lighting unit controller may also include group addressinformation. For example, it may include a universe address thatassociates the controller with other controllers or systems to create auniverse of controllers that can be addressed as a group; or it mayinclude a broadcast address such that broadcast commands can be sent toall controllers on the network.

FIG. 18 illustrates a flow diagram of a method of communicating toaddressed systems (e.g. lighting units). The method may include thesteps of providing a lighting unit wherein the lighting unit includes alighting unit address 1802; providing a lighting unit controller whereinthe lighting unit controller comprises a lighting unit controlleraddress 1804; providing a central network controller 1808; communicatingconfigured information from the central controller wherein theconfigured information comprises the lighting unit controller address1810; and causing the lighting unit controller to monitor centralcontroller communications, receive the configured information, interpretthe configured information and communicate light information to thelighting unit 1812.

A lighting unit controller 208 according to the present invention mayinclude a unique address such that the LUC 208 can be identified andcommunicated with. The LUC 208 may also include a universe address suchthat the lighting unit controller 208 can be grouped with othercontrollers or systems and addressed information can be communicated tothe group of systems. The lighting unit controller 208 may also havebroadcast address, or otherwise listen to general commands provided tomany or all associated systems.

Another aspect of the present invention relates to maintaining a systemof addressable systems. In an embodiment, a lighting unit controller 208may include a power monitoring system, as indicated above, and thissystem may be used to monitor the performance of associated systems(e.g. lighting unit 100) and feedback information relating to the same.For example, a lighting unit 100 may control an illumination source andthe illumination source may include three colors of LEDs (e.g. red,green and blue). A central controller 202 may communicate a statuscommand that directs each of the addressable lighting unit 100 to turnon a specific color and the power monitoring system may monitor thepower drawn by the lighting unit to indicate the condition of theillumination source. For example, the command may instruct a lightingunit to energize its red LEDs and following the energization, thelighting unit controller may monitor the power draw. If some of the redLEDs are not functioning or not functioning properly the power drawwould be less then an expected value and a fault condition may be noted.A testing sequence could be generated and communicated by the centralcontroller such that all of the lighting units are inspected using sucha system. Following this routine, a system report may be generatedindicating lighting units that may not be functioning properly. Thereport may indicate the lighting unit, associated lighting unitcontroller, position and any other relevant information. In embodiments,the system report may be delivered to a processor for identifyingchanges to the lighting configuration, such as changes to the addressesor data streams, or the handling of them, in lighting units 100. Thus, a“self-healing” lighting configuration can be created, that correctsdefects that arise as a result of failure of one or more lighting units100 or components thereof within the configuration.

Applicant has appreciated that by combining conventional light sources(e.g., fluorescent and incandescent light sources) with LED-based (e.g.,variable color) light sources, a variety of enhanced lighting effectsmay be realized for a number of space-illumination applications (e.g.,residential, office/workplace, retail, commercial, industrial, andoutdoor environments). Applicant also has recognized that various lightsources and other devices may be integrated together in amicroprocessor-based networked lighting system to provide a variety ofcomputer controlled programmable lighting effects.

Accordingly, one embodiment of the present invention is directedgenerally to networked lighting systems, and to various methods andapparatus for computer-based control of various light sources and otherdevices that may be coupled together to form a networked lightingsystem. In one aspect of the invention, conventional light sources areemployed in combination with LED-based (e.g., variable color) lightsources to realize enhanced lighting effects. For example, in oneembodiment, one or more computer-controllable (e.g.,microprocessor-based) light sources conventionally used in variousspace-illumination applications and LED-based light sources are combinedin a single fixture (hereinafter, a “combined” fixture), wherein theconventional light sources and the LED-based sources may be controlledindependently. In another embodiment, dedicated computer-controllablelight fixtures including conventional space-illumination light sourcesand LED-based light fixtures, as well as combined fixtures, may bedistributed throughout a space and coupled together as a network tofacilitate computer control of the fixtures.

In one embodiment of the invention, controllers (which may, for example,be microprocessor-based) are associated with both LED-based lightsources and conventional light sources (e.g., fluorescent light sources)such that the light sources are independently controllable. Morespecifically, according to one embodiment, individual light sources orgroups of light sources are coupled to independently controllable outputports of one or more controllers, and a number of such controllers mayin turn be coupled together in various configurations to form anetworked lighting system. According to one aspect of this embodiment,each controller coupled to form the networked lighting system is“independently addressable,” in that it may receive data for multiplecontrollers coupled to the network, but selectively responds to dataintended for one or more light sources coupled to it. By virtue of theindependently addressable controllers, individual light sources orgroups of light sources coupled to the same controller or to differentcontrollers may be controlled independently of one another based onvarious control information (e.g., data) transported throughout thenetwork. In one aspect of this embodiment, one or more othercontrollable devices (e.g., various actuators, such as relays, switches,motors, etc.) also may be coupled to output ports of one or morecontrollers and independently controlled.

According to one embodiment, a networked lighting system may be anessentially one-way system, in that data is transmitted to one or moreindependently addressable controllers to control various light sourcesand/or other devices via one or more output ports of the controllers. Inanother embodiment, controllers also may have one or more independentlyidentifiable input ports to receive information (e.g., from an output ofa sensor) that may be accessed via the network and used for variouscontrol purposes. In this aspect, the networked lighting system may beconsidered as a two-way system, in that data is both transmitted to andreceived from one or more independently addressable controllers. Itshould be appreciated, however, that depending on a given networktopology (i.e., interconnection of multiple controllers) as discussedfurther below, according to one embodiment, a controller may bothtransmit and receive data on the network regardless of the particularconfiguration of its ports.

In sum, a lighting system controller according to one embodiment of theinvention may include one or more independently controllable outputports to provide control signals to light sources or other devices,based on data received by the controller. The controller output portsare independently controllable in that each controller receiving data ona network selectively responds to and appropriately routes particularportions of the data intended for that controller's output ports. In oneaspect of this embodiment, a lighting system controller also may includeone or more independently identifiable input ports to receive outputsignals from various sensors (e.g., light sensors, sound or pressuresensors, heat sensors, motion sensors); the input ports areindependently identifiable in that the information obtained from theseports may be encoded by the controller as particularly identifiable dataon the network. In yet another aspect, the controller is “independentlyaddressable,” in that the controller may receive data intended formultiple controllers coupled to the network, but selectively exchangesdata with (i.e., receives data from and/or transmits data to) thenetwork based on the one or more input and/or output ports it supports.

According to one embodiment of the invention in which one or moresensors are employed, a networked lighting system may be implemented tofacilitate automated computer-controlled operation of multiple lightsources and devices in response to various feedback stimuli, for avariety of space-illumination applications. For example, automatedlighting applications for home, office, retail environments and the likemay be implemented based on a variety of feedback stimuli (e.g., changesin temperature or natural ambient lighting, sound or music, humanmovement or other motion, etc.). According to various embodiments,multiple controllers may be coupled together in a number of differentconfigurations (i.e., topologies) to form a networked lighting system.For example, according to one embodiment, data including controlinformation for multiple light sources (and optionally other devices),as well as data corresponding to information received from one or moresensors, may be transported throughout the network between one or morecentral or “hub” processors, and multiple controllers each coupled toone or more light sources, other controllable devices, and/or sensors.In another embodiment, a network of multiple controllers may not includea central hub processor exchanging information with the controllers;rather, the controllers may be coupled together to exchange informationwith each other in a de-centralized manner. More generally, in variousembodiments, a number of different network topologies, data protocols,and addressing schemes may be employed in networked lighting systemsaccording to the present invention. For example, according to oneembodiment, one or more particular controller addresses may be manuallypre-assigned to each controller on the network (e.g., stored innonvolatile memory of the controller). Alternatively, the system may be“self-learning” in that one or more central processors (e.g., servers)may query (i.e., “ping”) for the existence of controllers (e.g.,clients) coupled to the network, and assign one or more addresses tocontrollers once their existence is verified. The lighting system mayalso be “self-healing”, allowing it to reconfigure in the case offailure of a component or unit. In these embodiments, a variety ofaddressing schemes and data protocols may be employed, includingconventional Internet addressing schemes and data protocols.

In yet other embodiments, a particular network topology may dictate anaddressing scheme and/or data protocol for the networked lightingsystem. For example, in one embodiment, addresses may be assigned torespective controllers on the network based on a given network topologyand a particular position in the network topology of respectivecontrollers. Similarly, in another embodiment, data may be arranged in aparticular manner (e.g., a particular sequence) for transmissionthroughout the network based on a particular position in the networktopology of respective controllers. In one aspect of this embodiment,the network may be considered “self-configuring” in that it does notrequire the specific assignment of addresses to controllers, as theposition of controllers relative to one another in the network topologydictates the data each controller exchanges with the network.

In particular, according to one embodiment, data ports of multiplecontrollers are coupled to form a series connection (e.g., a daisy-chainor ring topology for the network), and data transmitted to thecontrollers is arranged sequentially based on a relative position in theseries connection of each controller. In one aspect of this embodiment,as each controller in the series connection receives data, it “stripsoff” one or more initial portions of the data sequence intended for itand transmits the remainder of the data sequence to the next controllerin the series connection. Each controller on the network in turn repeatsthis procedure, namely, stripping off one or more initial portions of areceived data sequence and transmitting the remainder of the sequence.Such a network topology obviates the need for assigning one or morespecific addresses to each controller; as a result, each controller maybe configured similarly, and controllers may be flexibly interchanged onthe network or added to the network without requiring a system operatoror network administrator to reassign addresses.

Having identified a variety of geometric configurations for lightingunit 100, it can be recognized that providing illumination controlsignals to the configurations requires the operators to be able torelate the appropriate control signal to the appropriate lighting unit100. A configuration of networked lighting unit 100 might be arrangedarbitrarily, requiring the operator to develop a table or similarfacility that relates a particular light to a particular geometriclocation in an environment. For large installations requiring manylighting unit 100, the requirement of identifying and keeping track ofthe relationship between a lights physical location and its networkaddress can be quite challenging, particularly given that the lightinginstaller may not be the same operator who will use and maintain thelighting system over time. Accordingly, in some situations it may beadvantageous to provide addressing schemes that enable easier relationbetween the physical location of a lighting unit 100 and its virtuallocation for purposes of providing it a control signal. Thus, oneembodiment of the invention is directed to a method of providing addressinformation to a lighting unit 100. The method includes acts of A)transmitting data to an independently addressable controller coupled toat least one LED lighting unit 100 and at least one other controllabledevice, the data including at least one of first control information fora first control signal output by the controller to the at least one LEDlight source and second control information for a second control signaloutput by the controller to the at least one other controllable device,and B) controlling at least one of the at least one LED light source andthe at least one other controllable device based on the data.

Another embodiment of the invention is directed to a method, comprisingacts of: A) receiving data for a plurality of independently addressablecontrollers, at least one independently addressable controller of theplurality of independently addressable controllers coupled to at leastone LED light source and at least one other controllable device, B)selecting at least a portion of the data corresponding to at least oneof first control information for a first control signal output by the atleast one independently addressable controller to the at least one LEDlight source and second control information for a second control signaloutput by the at least one independently addressable controller to theat least one other controllable device, and C) controlling at least oneof the at least one LED light source and the at least one othercontrollable device based on the selected portion of the data.

Another embodiment of the invention is directed to a lighting system,comprising a plurality of independently addressable controllers coupledtogether to form a network, at least one independently addressablecontroller of the plurality of independently addressable controllerscoupled to at least one LED light source and at least one othercontrollable device, and at least one processor coupled to the networkand programmed to transmit data to the plurality of independentlyaddressable controllers, the data corresponding to at least one of firstcontrol information for a first control signal output by the at leastone independently addressable controller to the at least one LED lightsource and second control information for a second control signal outputby the at least one independently addressable controller to the at leastone other controllable device. Another embodiment of the invention isdirected to an apparatus for use in a lighting system including aplurality of independently addressable controllers coupled together toform a network, at least one independently addressable controller of theplurality of independently addressable controllers coupled to at leastone LED light source and at least one other controllable device. Theapparatus comprises at least one processor having an output to couplethe at least one processor to the network, the at least one processorprogrammed to transmit data to the plurality of independentlyaddressable controllers, the data corresponding to at least one of firstcontrol information for a first control signal output by the at leastone independently addressable controller to the at least one LED lightsource and second control information for a second control signal outputby the at least one independently addressable controller to the at leastone other controllable device.

Another embodiment of the invention is directed to an apparatus for usein a lighting system including at least one LED light source and atleast one other controllable device. The apparatus comprises at leastone controller having at least first and second output ports to couplethe at least one controller to at least the at least one LED lightsource and the at least one other controllable device, respectively, theat least one controller also having at least one data port to receivedata including at least one of first control information for a firstcontrol signal output by the first output port to the at least one LEDlight source and second control information for a second control signaloutput by the second output port to the at least one other controllabledevice, the at least one controller constructed to control at least oneof the at least one LED light source and the at least one othercontrollable device based on the data.

Another embodiment of the invention is directed to a method in alighting system including at least first and second independentlyaddressable devices coupled to form a series connection, at least onedevice of the independently addressable devices including at least onelight source. The method comprises an act of: A) transmitting data to atleast the first and second independently addressable devices, the dataincluding control information for at least one of the first and secondindependently addressable devices, the data being arranged based on arelative position in the series connection of at least the first andsecond independently addressable devices.

Another embodiment of the invention is directed to a method in alighting system including at least first and second independentlyaddressable devices, at least one device of the independentlyaddressable devices including at least one light source. The methodcomprises acts of: A) receiving at the first independently addressabledevice first data for at least the first and second independentlyaddressable devices, B) removing at least a first data portion from thefirst data to form second data, the first data portion corresponding tofirst control information for the first independently addressabledevice. and C) transmitting from the first independently addressabledevice the second data. Another embodiment of the invention is directedto a lighting system, comprising at least first and second independentlyaddressable devices coupled to form a series connection, at least onedevice of the independently addressable devices including at least onelight source, and at least one processor coupled to the first and secondindependently addressable devices, the at least one processor programmedto transmit data to at least the first and second independentlyaddressable devices, the data including control information for at leastone of the first and second independently addressable devices, the dataarranged based on a relative position in the series connection of atleast the first and second independently addressable devices.

Another embodiment of the invention is directed to an apparatus for usein a lighting system including at least first and second independentlyaddressable devices coupled to form a series connection, at least onedevice of the independently addressable devices including at least onelight source. The apparatus comprises at least one processor having anoutput to couple the at least one processor to the first and secondindependently addressable devices, the at least one processor programmedto transmit data to at least the first and second independentlyaddressable devices, the data including control information for at leastone of the first and second independently addressable devices, the dataarranged based on a relative position in the series connection of atleast the first and second independently addressable devices.

Another embodiment of the invention is directed to an apparatus for usein a lighting system including at least first and second independentlycontrollable devices, at least one device of the independentlycontrollable devices including at least one light source. The apparatuscomprises at least one controller having at least one output port tocouple the at least one controller to at least the first independentlycontrollable device and at least one data port to receive first data forat least the first and second independently controllable devices, the atleast one controller constructed to remove at least a first data portionfrom the first data to form second data and to transmit the second datavia the at least one data port, the first data portion corresponding tofirst control information for at least the first independentlycontrollable device.

Another embodiment of the present invention is directed to lightingsystem. The lighting system comprises an LED lighting system adapted toreceive a data stream through a first data port, generate anillumination condition based on a first portion of the data stream andcommunicate at least a second portion of the data stream through asecond data port; a housing wherein the housing is adapted to retain theLED lighting system and adapted to electrically associate the first andsecond data ports with a data connection; wherein the data connectioncomprises an electrical conductor with at least one discontinuoussection; wherein the first data port is associated with the dataconnection on a first side of the discontinuous section and the seconddata port is associated with a second side of the discontinuous sectionwherein the first and second sides are electrically isolated.

Another embodiment of the present invention is directed at an integratedcircuit. The integrated circuit comprises a data recognition circuitwherein the data recognition circuit is adapted to read at least a firstportion of a data stream received through a first data port; anillumination control circuit adapted to generate at least oneillumination control signal in response to the first portion of data;and an output circuit adapted to transmit at least a second portion ofthe data stream through a second data port.

Another embodiment of the present invention is directed at a method forcontrolling lighting systems. The method comprises the steps ofproviding a plurality of lighting systems; communicating a data streamto a first lighting system of the plurality of lighting systems; causingthe first lighting system to receive the data stream and to read a firstportion of the data stream; causing the first lighting system togenerate a lighting effect in response to the first portion of the datastream; and causing the first lighting system to communicate at least asecond portion of the data stream to second lighting system of theplurality of lighting systems.

FIG. 19 is a diagram illustrating a networked lighting system accordingto one embodiment of the invention. In the system of FIG. 19, threecontrollers 26A, 26B and 26C are coupled together to form a network 24₁. In particular, each of the controllers 26A, 26B and 26C has a dataport 32 through which data 29 is exchanged between the controller and atleast one other device coupled to the network. While FIG. 19 shows anetwork including three controllers, it should be appreciated that theinvention is not limited in this respect, as any number of controllersmay be coupled together to form the network 24 ₁.

FIG. 19 also shows a processor 22 coupled to the network 24 ₁ via anoutput port 34 of the processor. In one aspect of the embodiment shownin FIG. 19, the processor 22 also may be coupled to a user interface 20to allow system operators or network administrators to access thenetwork (e.g., transmit information to and/or receive information fromone or more of the controllers 26A, 26B, and 26C, program the processor22, etc.).

The networked lighting system shown in FIG. 19 is configured essentiallyusing a bus topology; namely, each of the controllers is coupled to acommon bus 28. However, it should be appreciated that the invention isnot limited in this respect, as other types of network topologies (e.g.,tree, star, daisy-chain or ring topologies) may be implemented accordingto other embodiments of the invention. In particular, an example of adaisy-chain or ring topology for a networked lighting system accordingto one embodiment of the invention is discussed further below inconnection with FIG. 21. Also, it should be appreciated that the networklighting system illustrated in FIG. 19 may employ any of a variety ofdifferent addressing schemes and data protocols to transfer data 29between the processor 22 and one or more controllers 26A, 26B, and 26C,or amongst the controllers. Some examples of addressing schemes and dataprotocols suitable for purposes of the present invention are discussedin greater detail below.

As also illustrated in the embodiment of FIG. 19, each controller 26A,26B, and 26C of the networked lighting system is coupled to one or moreof a variety of devices, including, but not limited to, conventionallight sources (e.g., fluorescent or incandescent lights), LED-basedlight sources, controllable actuators (e.g., switches, relays, motors,etc.), and various sensors (e.g., light, heat, sound/pressure, motionsensors). For example, FIG. 19 shows that the controller 26A is coupledto a fluorescent light 36A, an LED 40A, and a controllable relay 38;similarly, the controller 26B is coupled to a sensor 42, a fluorescentlight source 36B, and a group 40B of three LEDs, and the controller 26Cis coupled to three groups 40C₁, 40C₂, and 40C₃ of LEDs, as well as afluorescent light source 36C.

The fluorescent light sources illustrated in FIG. 19 (and in otherfigures) are shown schematically as simple tubes; however, it should beappreciated that this depiction is for purposes of illustration only. Inparticular, the gas discharge tube of a fluorescent light sourcetypically is controlled by a ballast (not shown in the figures) whichreceives a control signal (e.g., a current or voltage) to operate thelight source. For purposes of this disclosure, fluorescent light sourcesgenerally are understood to comprise a glass tube filled with a vapor,wherein the glass tube has an inner wall that is coated with afluorescent material. Fluorescent light sources emit light bycontrolling a ballast electrically coupled to the glass tube to pass anelectrical current through the vapor in the tube. The current passingthrough the vapor causes the vapor to discharge electrons, which in turnimpinge upon the fluorescent material on the wall of the tube and causeit to glow (i.e., emit light). One example of a conventional fluorescentlight ballast may be controlled by applying an AC voltage (e.g., 120Volts AC) to the ballast to cause the glass tube to emit light. Inanother example of a conventional fluorescent light ballast, a DCvoltage between 0 and 10 Volts DC may be applied to the ballast toincrementally control the amount of light (e.g., intensity) radiated bythe glass tube. In the embodiment of FIG. 19, it should be appreciatedgenerally that the particular types and configuration of various devicescoupled to the controllers 26A, 26B, and 26C is for purposes ofillustration only, and that the invention is not limited to theparticular configuration shown in FIG. 19. For example, according toother embodiments, a given controller may be associated with only onedevice, another controller may be associated with only output devices(e.g., one or more light sources or actuators), another controller maybe associated with only input devices (e.g., one or more sensors), andanother controller may be associated with any number of either input oroutput devices, or combinations of input and output devices.Additionally, different implementations of a networked lighting systemaccording to the invention may include only light sources, light sourcesand other output devices, light sources and sensors, or any combinationof light sources, other output devices, and sensors.

As shown in FIG. 19, according to one embodiment, the various devicesare coupled to the controllers 26A, 26B, and 26C via a number of ports.More specifically, in addition to at least one data port 32, eachcontroller may include one or more independently controllable outputports 30 as well as one or more independently identifiable input ports31. According to one aspect of this embodiment, each output port 30provides a control signal to one or more devices coupled to the outputport 30, based on particular data received by the controller via thedata port 32. Similarly, each input port 31 receives a signal from oneor more sensors, for example, which the controller then encodes as datawhich may be transmitted via the data port 32 throughout the network andidentified as corresponding to a signal received at a particular inputport of the network.

In particular, according to one aspect of this embodiment, particularidentifiers may be assigned to each output port and input port of agiven controller. This may be accomplished, for example, via software orfirmware at the controller (e.g., stored in the memory 48), a particularhardware configuration of the various input and/or output ports,instructions received via the network (i.e., the data port 32) from theprocessor 22 or one or more other controllers, or any combination of theforegoing. In another aspect of this embodiment, the controller isindependently addressable in that the controller may receive dataintended for multiple devices coupled to output ports of othercontrollers on the network, but has the capability of selecting andresponding to (i.e., selectively routing) particular data to one or moreof its output ports, based on the relative configuration of the ports(e.g., assignment of identifiers to ports and/or physical arrangement ofports) in the controller. Furthermore, the controller is capable oftransmitting data to the network that is identifiable as correspondingto a particular input signal received at one or more of its input ports31.

For example, in one embodiment of the invention based on the networkedlighting system shown in FIG. 19, a sensor 42 responsive to some inputstimulus (e.g., light, sound/pressure, temperature, motion, etc.)provides a signal to an input port 31 of the controller 26B, which maybe particularly accessed (i.e., independently addressed) over thenetwork 24 ₁ (e.g., by the processor 22) via the data port 32 of thecontroller 26B. In response to signals output by the sensor 42, theprocessor 22 may transmit various data throughout the network, includingcontrol information to control one or more particular light sourcesand/or other devices coupled to any one of the controllers 26A, 26B, and26C; the controllers in turn each receive the data, and selectivelyroute portions of the data to appropriate output ports to effect thedesired control of particular light sources and/or other devices. Inanother embodiment of the invention not employing the processor 22, butinstead comprising a de-centralized network of multiple controllerscoupled together, any one of the controllers may function similarly tothe processor 22, as discussed above, to first access input data fromone or more sensors and then implement various control functions basedon the input data.

From the foregoing, it should be appreciated that a networked lightingsystem according to one embodiment of the invention may be implementedto facilitate automated computer-controlled operation of multiple lightsources and devices in response to various feedback stimuli (e.g., fromone or more sensors coupled to one or more controllers of the network),for a variety of space-illumination applications. For example, automatednetworked lighting applications according to the invention for home,office, retail, commercial environments and the like may be implementedbased on a variety of feedback stimuli (e.g., changes in temperature ornatural ambient lighting, sound or music, human movement or othermotion, etc.) for energy management and conservation, safety, marketingand advertisement, entertainment and environment enhancement, and avariety of other purposes.

In different embodiments based on the system of FIG. 19, various dataprotocols and addressing schemes may be employed in networked lightingsystems according to the invention. For example, according to oneembodiment, particular controller and/or controller output and inputport addresses may be manually pre-assigned to each controller on thenetwork 24 ₁ (e.g., stored in nonvolatile memory of the controller).Alternatively, the system may be “self-configuring” in that theprocessor 22 may query (i.e., “ping”) for the existence of controllerscoupled to the network 24 ₁, and assign addresses to controllers oncetheir existence is verified. In these embodiments, a variety ofaddressing schemes and data protocols may be employed, includingconventional Internet addressing schemes and data protocols. Theforegoing concepts also may be applied to the embodiment of a networkedlighting system shown in FIG. 21, discussed in greater detail below.

According to one embodiment of the invention, differently colored LEDsmay be combined along with one or more conventional non-LED lightsources, such as one or more fluorescent light sources, in acomputer-controllable lighting fixture (e.g., a microprocessor-basedlighting fixture). In one aspect of this embodiment, the different typesof light sources in such a fixture may be controlled independently,either in response to some input stimulus or as a result of particularlyprogrammed instructions, to provide a variety of enhanced lightingeffects for various applications. The use of differently colored LEDs(e.g., red, green, and blue) in microprocessor-controlled LED-basedlight sources is discussed, for example, in U.S. Pat. No. 6,016,038,hereby incorporated herein by reference. In these LED-based lightsources, generally an intensity of each LED color is independentlycontrolled by programmable instructions so as to provide a variety ofcolored lighting effects. According to one embodiment of the presentinvention, these concepts are further extended to implementmicroprocessor-based control of a lighting fixture including bothconventional non-LED light sources and novel LED-based light sources.

For example, as shown in FIG. 19, according to one embodiment of theinvention, the controller 26C is coupled to a first group 40C₁ of redLEDs, a second group 40C₂ of green LEDs, and a third group 40C₃ of blueLEDs. Each of the first, second, and third groups of LEDs is coupled toa respective independently controllable output port 30 of the controller26C, and accordingly may be independently controlled. Although threeLEDs connected in series are shown in each illustrated group of LEDs inFIG. 19, it should be appreciated that the invention is not limited inthis respect; namely, any number of light sources or LEDs may be coupledtogether in a series or parallel configuration and controlled by a givenoutput port 30 of a controller, according to various embodiments.

While embodiments herein may indicate the controller 26 is directlycontrolling the output of an illumination source or other device, itshould be understood that the controller may be controlling othercomponents to indirectly control the illumination source or otherdevice. For example, the controller 26 may control a string of LEDs. Thecontroller 26C shown in FIG. 19 also is coupled to a fluorescent lightsource 36C via another independently controllable output port 30.According to one embodiment, data received and selectively routed by thecontroller 26C to its respective output ports includes controlinformation corresponding to desired parameters (e.g., intensity) foreach of the red LEDs 40C₁, the green LEDs 40C₂, the blue LEDs 40C₃, andthe fluorescent light source 36C. In this manner, the intensity of thefluorescent light source 36C may be independently controlled byparticular control information (e.g., microprocessor-basedinstructions), and the relative intensities of the red, green, and blueLEDs also may be independently controlled by respective particularcontrol information (e.g., microprocessor-based instructions), torealize a variety of color enhancement effects for the fluorescent lightsource 36C.

FIG. 20 is a diagram illustrating an example of a controller 26,according to one embodiment of the invention, that may be employed asany one of the controllers 26A, 26B, and 26C in the networked lightingof FIG. 19. As shown in FIG. 20, the controller 26 includes a data port32 having an input terminal 32A and an output terminal 32B, throughwhich data 29 is transported to and from the controller 26. Thecontroller 26 of FIG. 20 also includes a microprocessor 46 (μP) toprocess the data 29, and may also include a memory 48 (e.g., volatileand/or non-volatile memory).

The controller 26 of FIG. 20 also includes control circuitry 50, coupledto a power supply 44 and the microprocessor 46. The control circuitry 50and the microprocessor 46 operate so as to appropriately transmitvarious control signals from one or more independently controllableoutput ports 30 (indicated as O1, O2, O3, and O4 in FIG. 20), based ondata received by the microprocessor 46. While FIG. 20 illustrates fouroutput ports 30, it should be appreciated that the invention is notlimited in this respect, as the controller 26 may be designed to haveany number of output ports. The power supply 44 provides power to themicroprocessor 46 and the control circuitry 50, and ultimately may beemployed to drive the control signals output by the output ports, asdiscussed further below.

According to one embodiment of the invention, the microprocessor 46shown in FIG. 20 is programmed to decode or extract particular portionsof the data it receives via the data port 32 that correspond to desiredparameters for one or more devices 52A–52D (indicated as DEV1, DEV2,DEV3, and DEV4 in FIG. 20) coupled to one or more output ports 30 of thecontroller 26. As discussed above in connection with FIG. 19, thedevices 52A–52D may be individual light sources, groups of lightssources, or one or more other controllable devices (e.g., variousactuators). In one aspect of this embodiment, once the microprocessor 46decodes or extracts particular portions of the received data intendedfor one or more output ports of the controller 26, the decoded orextracted data portions are transmitted to the control circuitry 50,which converts the data portions to control signals output by the one ormore output ports.

In one embodiment, the control circuitry 50 of the controller 26 shownin FIG. 20 may include one or more digital-to-analog converters (notshown in the figure) to convert data portions received from themicroprocessor 46 to analog voltage or current output signals providedby the output ports. In one aspect of this embodiment, each output portmay be associated with a respective digital-to-analog converter of thecontrol circuitry, and the control circuitry 50 may route respectivedata portions received from the microprocessor 46 to the appropriatedigital-to-analog converters. As discussed above, the power supply 44may provide power to the digital-to-analog converters so as to drive theanalog output signals. In one aspect of this embodiment, each outputport 30 may be controlled to provide a variable analog voltage controlsignal in a range of from 0 to 10 Volts DC. It should be appreciated,however, that the invention is not limited in this respect; namely,other types of control signals may be provided by one or more outputports of a controller, or different output ports of a controller may beconfigured to provide different types of control signals, according toother embodiments.

For example, according to one embodiment, the control circuitry 50 ofthe controller 26 shown in FIG. 20 may provide pulse width modulatedsignals as control signals at one or more of the output ports 30. Inthis embodiment, it should be appreciated that, according to variouspossible implementations, digital-to-analog converters as discussedabove may not necessarily be employed in the control circuitry 50. Theuse of pulse width modulated signals to drive respective groups ofdifferently colored LEDs in LED-based light sources is discussed forexample, in U.S. Pat. No. 6,016,038, referenced above. According to oneembodiment of the present invention, this concept may be extended tocontrol other types of light sources and/or other controllable devicesof a networked lighting system.

As shown in FIG. 20, the controller 26 also may include one or moreindependently identifiable input ports 31 coupled to the controlcircuitry 50 to receive a signal 43 provided by one or more sensors 42.Although the controller 26 shown in FIG. 20 includes one input port 31,it should be appreciated that the invention is not limited in thisrespect, as controllers according to other embodiments of the inventionmay be designed to have any number of individually identifiable inputports. Additionally, it should be appreciated that the signal 43 may bedigital or analog in nature, as the invention is not limited in thisrespect. In one embodiment, the control circuitry 50 may include one ormore analog-to-digital converters (not shown) to convert an analogsignal received at one or more input ports 31 to a corresponding digitalsignal. One or more such digital signals subsequently may be processedby the microprocessor 46 and encoded as data (according to any of avariety of protocols) that may be transmitted throughout the network,wherein the encoded data is identifiable as corresponding to inputsignals received at one or more particular input ports 31 of thecontroller 26.

While the controller 26 shown in FIG. 20 includes a two-way data port 32(i.e., having an input terminal 32A to receive data and an outputterminal 32B to transmit data), as well as output ports 30 and an inputport 31, it should be appreciated that the invention is not limited tothe particular implementation of a controller shown in FIG. 20. Forexample, according to other embodiments, a controller may include aone-way data port (i.e., having only one of the input terminal 32A andthe output terminal 32B and capable of either receiving or transmittingdata, respectively), and/or may include only one or more output ports oronly one or more input ports.

FIG. 21 is a diagram showing a networked lighting system according toanother embodiment of the invention. In the lighting system of FIG. 21,the controllers 26A, 26B, and 26C are series-connected to form a network24 ₂ having a daisy-chain or ring topology. Although three controllersare illustrated in FIG. 21, it should be appreciated that the inventionaccording to this embodiment is not limited in this respect, as anynumber of controllers may be series-connected to form the network 24 ₂.Additionally, as discussed above in connection with FIG. 19, networkedlighting systems according to various embodiments of the invention mayemploy any of a number of different addressing schemes and dataprotocols to transport data. With respect to the networked lightingsystem shown in FIG. 21, in one aspect, the topology of the network 24 ₂particularly lends itself to data transport techniques based on tokenring protocols. However, it should be appreciated that the lightingsystem of FIG. 21 is not limited in this respect, as other datatransport protocols may be employed in this embodiment, as discussedfurther below.

In the lighting system of FIG. 21, data is transported through thenetwork 24 ₂ via a number of data links, indicated as 28A, 28B, 28C, and28D. For example, according to one embodiment, the controller 26Areceives data from the processor 22 on the link 28A and subsequentlytransmits data to the controller 26B on the link 28B. In turn, thecontroller 26B transmits data to the controller 26C on the link 28C. Asshown in FIG. 21, the controller 26C may in turn optionally transmitdata to the processor 22 on the link 28D, thereby forming a ringtopology for the network 24 ₂. However, according to another embodiment,the network topology of the system shown in FIG. 21 need not form aclosed ring (as indicated by the dashed line for the data link 28D), butinstead may form an open daisy-chain. For example, in an alternateembodiment based on FIG. 21, data may be transmitted to the network 24 ₂from the processor 22 (e.g., via the data link 28A), but the processor22 need not necessarily receive any data from the network 24 ₂ (e.g.,there need not be any physical connection to support the data link 28D).

According to various embodiments based on the system shown in FIG. 21,the data transported on each of the data links 28A–28D may or may not beidentical; i.e., stated differently, according to various embodiments,the controllers 26A, 26B, and 26C may or may not receive the same data.Additionally, as discussed above in connection with the systemillustrated in FIG. 19, it should be appreciated generally that theparticular types and configuration of various devices coupled to thecontrollers 26A, 26B, and 26C shown in FIG. 21 is for purposes ofillustration only. For example, according to other embodiments, a givencontroller may be associated with only one device, another controllermay be associated with only output devices (e.g., one or more lightsources or actuators), another controller may be associated with onlyinput devices (e.g., one or more sensors), and another controller may beassociated with any number of either input or output devices, orcombinations of input and output devices. Additionally, differentimplementations of a networked lighting system based on the topologyshown in FIG. 21 may include only light sources, light sources and otheroutput devices, light sources and sensors, or any combination of lightsources, other output devices, and sensors.

According to one embodiment of the invention based on the networktopology illustrated in FIG. 21, data transmitted from the processor 22to the network 24 ₂ (and optionally received by the processor from thenetwork) may be particularly arranged based on the relative position ofthe controllers in the series connection forming the network 24 ₂. Forexample, FIG. 22 is a diagram illustrating a data protocol based on aparticular arrangement of data that may be used in the networkedlighting system of FIG. 21, according to one embodiment of theinvention. In FIG. 22, a sequence 60 of data bytes B1–B10 isillustrated, wherein the bytes B1–B3 constitute a first portion 62 ofthe sequence 60, the bytes B4–B6 constitute a second portion 64 of thesequence 60, and the bytes B7–B10 constitute a third portion 66 of thesequence 60. While FIG. 22 shows a sequence of ten data bytes arrangedin three portions, it should be appreciated that the invention is notlimited in this respect, and that the particular arrangement and numberof data bytes shown in FIG. 22 is for purposes of illustration only.

According to one embodiment, the exemplary protocol shown in FIG. 22 maybe used in the network lighting system of FIG. 21 to control variousoutput devices (e.g., a number of light sources and/or actuators)coupled to one or more of the controllers 26A, 26B, 26C. For purposes ofexplaining this embodiment, the sensor 42 coupled to an input port 31 ofthe controller 26B shown in FIG. 21 is replaced by a light sourcecoupled to an output port 30; namely, the controller 26B is deemed tohave three independently controllable output ports 30 respectivelycoupled to three light sources, rather than two output ports 30 and oneinput port 31. In this embodiment, each of the data bytes B1–B10 shownin FIG. 22 corresponds to a digital value representing a correspondingdesired parameter for a control signal provided by a particular outputport of one of the controllers 26A, 26B, and 26C.

In particular, according to one embodiment of the invention employingthe network topology of FIG. 21 and the data protocol shown in FIG. 22,the data sequence 60 initially is transmitted from the processor 22 tothe controller 26A via the data link 28A, and the data bytes B1–B10 areparticularly arranged in the sequence based on the relative position ofthe controllers in the series connection forming the network 24 ₂. Forexample, the data bytes B1–B3 of the first portion 62 of the datasequence 60 respectively correspond to data intended for the threeoutput ports 30 of the controller 26A. Similarly, the data bytes B4–B6of the second portion 64 of the sequence respectively correspond to dataintended for the three output ports 30 of the controller 26B. Likewise,the data bytes B7–B10 of the third portion 66 of the sequencerespectively correspond to data intended for the four output ports 30 ofthe controller 26C.

In this embodiment, each controller 26A, 26B, and 26C is programmed toreceive data via the input terminal 32A of the data port 32, “strip off”an initial portion of the received data based on the number of outputports supported by the controller, and then transmit the remainder ofthe received data, if any, via the output terminal 32B of the data port32. Accordingly, in this embodiment, the controller 26A receives thedata sequence 60 from the processor 22 via the data link 28A, strips offthe first portion 62 of the three bytes B1–B3 from the sequence 60, anduses this portion of the data to control its three output ports. Thecontroller 26A then transmits the remainder of the data sequence,including the second and third portions 64 and 66, respectively, to thecontroller 26B via the data link 28B. Subsequently, the controller 26Bstrips off the second portion 62 of the three bytes B4–B6 from thesequence (because these now constitute the initial portion of the datasequence received by the controller 26B), and uses this portion of thedata to control its three output ports. The controller 26B thentransmits the remainder of the data sequence (now including only thethird portion 66) to the controller 26C via the data link 28C. Finally,the controller 26C strips off the third portion 66 (because this portionnow constitutes the initial and only portion of the data sequencereceived by the controller 26C), and uses this portion of the data tocontrol its four output ports.

While the particular configuration of the networked lighting systemillustrated in FIG. 21 includes a total of ten output ports (threeoutput ports for each of the controllers 26A and 26B, and four outputports for the controller 26C), and the data sequence 60 shown in FIG. 22includes at least ten corresponding data bytes B1–B10, it should beappreciated that the invention is not limited in this respect; namely,as discussed above in connection with FIG. 20, a given controller may bedesigned to support any number of output ports. Accordingly, in oneaspect of this embodiment, it should be appreciated that the number ofoutput ports supported by each controller and the total number ofcontrollers coupled to form the network 24 ₂ dictates the sequentialarrangement, grouping, and total number of data bytes of the datasequence 60 shown in FIG. 22

For example, in one embodiment, each controller is designed identicallyto support four output ports; accordingly, in this embodiment, a datasequence similar to that shown in FIG. 22 is partitioned into respectiveportions of at least four bytes each, wherein consecutive four byteportions of the data sequence are designated for consecutive controllersin the series connection. In one aspect of this embodiment, the networkmay be considered “self-configuring” in that it does not require thespecific assignment of addresses to controllers, as the position ofcontrollers relative to one another in the series connection dictatesthe data each controller responds to from the network. As a result, eachcontroller may be configured similarly (e.g., programmed to strip off aninitial four byte portion of a received data sequence), and controllersmay be flexibly interchanged on the network or added to the networkwithout requiring a system operator or network administrator to reassignaddresses. In particular, a system operator or programmer need only knowthe relative position of a given controller in the series connection toprovide appropriate data to the controller.

While embodiments herein discuss the data stream 60, of FIG. 22, ascontaining data segments B1, B2, etc. wherein each data segment istransmitted to an illumination system to control a particular output ofa controller 26, it should be understood that the individual datasegments may be read by a controller 26 and may be used to control morethan one output. For example, the controller 26 may be associated withmemory wherein control data is stored. Upon receipt of a data segmentB1, for example, the controller may look-up and use control data fromits memory that corresponds with the data segment B1 to control one ormore outputs (e.g. illumination sources). For example, when a controller26 controls two or more different colored LEDs, a received data packetB1 may be used to set the relative intensities of the different colors.

According to another embodiment of the invention based on the networktopology illustrated in FIG. 21 and the data protocol shown in FIG. 22,one or more of the data bytes of the sequence 60 may correspond todigital values representing corresponding input signals received atparticular input ports of one or more controllers. In one aspect of thisembodiment, the data sequence 60 may be arranged to include at least onebyte for each input port and output port of the controllers coupledtogether to form the network 24 ₂, wherein a particular position of oneor more bytes in the sequence 60 corresponds to a particular input oroutput port. For example, according to one embodiment of the inventionin which the sensor 42 is coupled to an input port 31 of the controller26B as shown in FIG. 21, the byte B4 of the data sequence 60 maycorrespond to a digital value representing an input signal received atthe input port 31 of the controller 26B.

In one aspect of this embodiment, rather than stripping off initialportions of received data as described above in the foregoingembodiment, each controller instead may be programmed to receive andtransmit the entire data sequence 60. Upon receiving the entire datasequence 60, each controller also may be programmed to appropriatelyindex into the sequence to extract the data intended for its outputports, or place data into the sequence from its input ports. In thisembodiment, so as to transmit data corresponding to one or more inputports to the processor 22 for subsequent processing, the data link 28Dis employed to form a closed ring topology for the network 24 ₂.

In one aspect of this embodiment employing a closed ring topology, theprocessor 22 may be programmed to initially transmit a data sequence 60to the controller 26A having “blank” bytes (e.g., null data) inpositions corresponding to one or more input ports of one or morecontrollers of the network 24 ₂. As the data sequence 60 travels throughthe network, each controller may place data corresponding to its inputports, if any, appropriately in the sequence. Upon receiving the datasequence via the data link 28D, the processor 22 may be programmed toextract any data corresponding to input ports by similarly indexingappropriately into the sequence.

According to one embodiment of the invention, the data protocol shown inFIG. 22 may be based at least in part on the DMX data protocol. The DMXdata protocol is discussed, for example, in U.S. Pat. No. 6,016,038,referenced above. Essentially, in the DMX protocol, each byte B1–B10 ofthe data sequence 60 shown in FIG. 22 corresponds to a digital value ina range of 0–255. As discussed above, this digital value may represent adesired output value for a control signal provided by a particularoutput port of a controller; for example, the digital value mayrepresent an analog voltage level provided by an output port, or apulse-width of a pulse width modulated signal provided by an outputport. Similarly, this digital value may represent some parameter (e.g.,a voltage or current value, or a pulse-width) of a signal received at aparticular input port of a controller.

According to yet another embodiment of the invention based on thenetwork topology illustrated in FIG. 21 and the data protocol shown inFIG. 22, one or more of the data bytes of the sequence 60 may correspondto an assigned address (or group of addresses) for one or more of thecontrollers 26A, 26B, and 26C. For example, the byte B1 may correspondto an address (or starting address of a range of addresses) for thecontroller 26A, the byte B2 may correspond to an address (or startingaddress of a range of addresses) for the controller 26B, and the byte B3may correspond to an address (or starting address of a range ofaddresses) for the controller 26C. The other bytes of the data sequence60 shown in FIG. 22 respectively may correspond to addresses for othercontrollers, or may be unused bytes.

In one aspect of this embodiment, the processor 22 transmits at leastthe bytes B1–B3 to the controller 26A. The controller 26A stores thefirst byte B1 (e.g., in its memory 48, as shown in FIG. 20) as anaddress, removes B1 from the data sequence, and transmits the remainingbytes to the controller 26B. In a similar manner, the controller 26Breceives the remaining bytes B2 and B3, stores the first received byte(i.e., B2) as an address, and transmits the remaining byte B3 to thecontroller 26C, which in turn stores the byte B3 (the first receivedbyte) as an address. Hence, in this embodiment, the relative position ofeach controller in the series connection forming the network 24 ₂dictates the address (or starting address of a range of addresses)assigned to the controller initially by the processor, rather than thedata itself to be processed by the controller. In this embodiment, as inone aspect of the system of FIG. 19 discussed above, once eachcontroller is assigned a particular address or range of addresses, eachcontroller may be programmed to receive and re-transmit all of the datainitially transmitted by the processor 22 on the data link 28A; stateddifferently, in one aspect of this embodiment, once each controller isassigned an address, the sequence of data transmitted by the processor22 is not constrained by the particular topology (i.e., position in theseries connection) of the controllers that form the network 24 ₂.Additionally, each controller does not need to be programmed toappropriately index into a data sequence to extract data from, or placedata into, the sequence. Rather, data corresponding to particular inputand output ports of one or more controllers may be formatted with an“address header” that specifies a particular controller, and aparticular input or output port of the controller.

According to another aspect of this embodiment, during the assignment ofaddresses to controllers, the processor 22 may transmit a data sequencehaving an arbitrary predetermined number of data bytes corresponding tocontroller addresses to be assigned. As discussed above, each controllerin the series connection in turn extracts an address from the sequenceand passes on the remainder of the sequence. Once the last controller inthe series connection extracts an address, any remaining addresses inthe sequence may be returned to the processor 22 via the data link 28D.In this manner, based on the number of bytes in the sequence originallytransmitted by the processor 22 and the number of bytes in the sequenceultimately received back by the processor, the processor may determinethe number of controllers that are physically coupled together to formthe network 24 ₂.

According to yet another aspect of this embodiment, during theassignment of addresses to controllers, the processor 22 shown in FIG.21 may transmit an initial controller address to the controller 26A,using one or more bytes of the data sequence 60 shown in FIG. 22. Uponreceiving this initial controller address, the controller 26A may storethis address (e.g., in nonvolatile memory), increment the address, andtransmit the incremented address to the controller 26B. The controller26B in turn repeats this procedure; namely, storing the receivedaddress, incrementing the received address, and transmitting theincremented address to the next controller in the series connection(i.e., the controller 26C). According to one embodiment, the lastcontroller in the series connection (e.g., the controller 26C in theexample shown in FIG. 21) transmits either the address it stored or anaddress that is incremented from the one it stored to the processor 22(e.g., via the data link 28D in FIG. 21). In this manner, the processor22 need only transmit to the network an initial controller address, andbased on the address it receives back from the network, the processormay determine the number of controllers that are physically coupledtogether to form the network 24 ₂.

In the various embodiments of the invention discussed above, theprocessor 22 and the controllers (e.g., 26, 26A, 26B, etc.) can beimplemented in numerous ways, such as with dedicated hardware, or usingone or more microprocessors that are programmed using software (e.g.,microcode) to perform the various functions discussed above. In thisrespect, it should be appreciated that one implementation of the presentinvention comprises one or more computer readable media (e.g., volatileand non-volatile computer memory such as PROMs, EPROMs, and EEPROMs,floppy disks, compact disks, optical disks, magnetic tape, etc.) encodedwith one or more computer programs that, when executed on one or moreprocessors and/or controllers, perform at least some of theabove-discussed functions of the present invention. The one or morecomputer readable media may be fixed within a processor or controller ormay be transportable, such that the one or more programs stored thereoncan be loaded into a processor or controller so as to implement variousaspects of the present invention discussed above. The term “computerprogram” is used herein in a generic sense to refer to any type ofcomputer code (e.g., software or microcode) that can be employed toprogram one or more microprocessors so as to implement theabove-discussed aspects of the present invention.

An embodiment of the present invention may be a lighting network whereinthe lighting network includes a plurality of lighting fixtures. Thelighting fixtures may be associated with a processor and the processormay communicate a lighting control data stream to the plurality oflighting systems wherein the lighting systems are arranged in a serialfashion. Each of the plurality of lighting systems may in turn strip, orotherwise modify, the control data stream for its use and thencommunicate the remainder of the data stream to the remaining lightingsystems in the serial connection. In an embodiment, the stripping ormodification occurs when a lighting fixture receives a control datastream. In an embodiment, the lighting fixture may strip off, or modify,the first section of the control data stream such that the lightingfixture can change the lighting conditions to correspond to the data.The lighting fixture may then take the remaining data stream andcommunicate it to the next lighting fixture in the serial line. In turn,this next lighting system completes similar stripping/modification,executing and re-transmitting. In an embodiment, the processor mayreceive higher level lighting commands and the processor may generateand communicate lighting control signals based on the higher levelcommands. A system according to the present invention may comprise manylighting systems wherein coordinated lighting effects are generated suchas, on a Ferris Wheel, amusement park ride, boardwalk, building,corridor, or any other area where many lighting fixtures are desired.

In some cases one or more processors, lighting units, or othercomponents in a series may fail. Methods and system provided herein alsoinclude providing a self-healing lighting system, which may includeproviding a plurality of lighting units in a system, each having aplurality of light sources; providing at least one processor associatedwith at least some of the lighting units for controlling the lightingunits; providing a network facility for addressing data to each of thelighting units; providing a diagnostic facility for identifying aproblem with a lighting unit; and providing a healing facility formodifying the actions of at least one processor to automatically correctthe problem identified by the diagnostic facility.

FIGS. 22A and 22B demonstrate the “self-healing” concept according toone embodiment of the invention. Referring to FIG. 22A, a plurality oflighting units 100 are disposed in an array 7800. The array of FIG. 22Ais a one-dimensional array; that is, the lighting units 100 are strungserially along a single path of wiring. This configuration can bereferred to as a “string light” configuration. In such a configuration,it is possible to address data so the processor 102 of the firstlighting unit 100 reads an incoming data stream, takes the first byte ofdata from the data stream, either modifies (such as by placing a “1” inthe first bit of the first byte) or strips off the first bytealtogether, and passes the data stream on to the next lighting unit 100.A subsequent lighting unit 100 then reads the modified data stream fromthe first light and, depending on whether the first light modifies thefirst byte or strips off the first byte, either reads the first byte(previously the second byte) or reads the first unmodified byte (e.g.,the first byte that does not have a “1” in the first location). Thesubsequent lighting unit 100 then passes on the modified data stream,and so on throughout the line of lighting units 100. The lighting units100 can thus be positioned in an array 7800, with the wiring and datadelivered in a substantially one-dimensional, or linear arrangement.

One challenge with a serial configuration such as that of FIG. 22A isthat if a given lighting unit 100 fails, then all subsequent units canbe affected. For example, if a show is authored geometrically asdescribed above, but a lighting unit 100 fails to strip off data, thenthe entire array may be improperly scripted, because the authoredeffects are shifted within the array 7800. Thus, a need exists for waysto heal the lighting network when it fails. One technique for healing alighting network of lighting units 100 is to provide a diagnosticprocessor 7802. The diagnostic processor 7802 can measure the input andoutput to a particular lighting unit 100 (such as a linear lightingunit, a tile, or the like). If the output does not change despitechanges to the input, the diagnostic processor 7802 can recognize afailure in the lighting unit 100. By analyzing the input and outputstreams (such as measuring power or current changes in the mannerdescribed in connection with FIGS. 13 and 14 above) a processor 7802 candetermine not only failure, but the number of light sources 104A–104Dlocated in the lighting unit 100, so that the processor 7802 knows howmany bytes of data the failed lighting unit 100 should have taken. Theprocessor 7802 can then modify the output data stream to correct for thedefect, such as by setting the first bit of an appropriate number ofbytes that would have been used by the failed lighting unit 100 to “1”or by stripping off that number of bytes from the data stream, dependingon which technique is used for modifying the data stream betweenlighting units 100 in the string.

A diagnostic processor 7802 can measure inputs and outputs from each ofthe lighting units 100 in the array 7800, so that all of the string ismonitored. In embodiments the diagnostic processor(s) 7802 can be incommunication with a control processor 102, so that the input datastream is modified to account for the failure of a lighting unit 100.For example, an authored show could be altered to maintain geometricmapping, without requiring the diagnostic processor 7802 to alter thedata stream coming out of a failed lighting unit 100.

Referring to FIG. 22B, an array 7900 includes a plurality of lightingunits 100, each of which is equipped with input and output ports. Forexample, a given unit could have one input port and three output ports.By contrast to the one-dimensional array 7800 of FIG. 22A, the array7900 is a two-dimensional array 7900. In embodiments, a given lightingunit 100 may be adapted to allow it to change the function of its ports.For example, which port is the input port and which are the output portscan be varied by a processor 102 of the lighting unit 100. In a properlyfunctioning system, data enters the input port of one lighting unit 100,exits the output port, and feeds the input port of one or moreneighboring lighting units 100. The dotted arrows 7902 show a path ofdata through the two-dimensional mesh of the array 7900. This is onepath of many available paths. However, it can be appreciated that if alighting unit 100 fails, then other lighting units 100 whose input portsare configured to receive data from that lighting unit 100 will notreceive the data that is intended for them. In that case it is desirableto re-route data so that it reaches the units that are “downstream” fromthe failed lighting unit 100. For example, if the unit 7904 fails, thenin the routing shown in FIG. 22B the unit 7908 would also fail, becauseits input port is directed to the output of the unit 7904. However,switching the input port of the unit 7908 to the position proximal tothe unit 7910 would allow the unit 7908 to receive data from that unitinstead, keeping the scope of the failure to a single unit, rather thanhaving it propagate to other unit. In embodiments, such a mesh or array7900 could be “self-healing,” in that it could include a master routingtable and a diagnostic processor, so that if the diagnostic processor(similar to that described in connection with FIG. 22A) finds a failureof a particular lighting unit 100, then it can notify a control systemto use a master routing table to reroute the data through the mesh, suchas by changing the location of input ports of units 100 that weredependent on the incoming data. The mesh 7900 may be able to heal itselfwithout a master routing unit; that is, units 100 can be configured tomonitor whether or not they are receiving data (such as whenever theyare powered on). If a unit 100 is not receiving data, then it can shiftits input port to a different port of the lighting unit 100 and checkagain to determine whether it is receiving data. For example, the unit7908 would “heal” a failure of the unit 7904 by changing its input portto the position facing the unit 7910, without the need for a masterrouting table. In other cases, if the array 7900 is unable to “heal” byjust having individual lighting units 100 shift to new input ports whennot receiving data, it may be necessary for lighting units 100 to signaltheir status to neighboring units, which would shift their own inputports until a viable routing is established throughout the array 7900.Once a routing is determined, it may be desirable to monitor therouting, such as with a diagnostic processor, to allow for any changesthat may be needed in the incoming data stream to account, for example,for geometric effects that change with different routing of the data.

Other embodiments of self-healing networks are known, such asself-healing information networks, and the principles of those networksmay be applied to lighting devices in lighting networks in accordancewith the principles of this invention.

Another issue in large configurations of lighting units 100 is capturingthe addresses of the lighting units 100. An embodiment of the presentinvention is a method of automatically capturing the position of thelighting units 100 within an environment. An imaging device may be usedas a means of capturing the position of the light. A camera, connectedto a computing device, can capture the image for analysis cancalculation of the position of the light. FIG. 23 depicts a flow diagram2300 that depicts a series of steps that may be used to accomplish thismethod. First, at a step 2302, the environment to be mapped may bedarkened by reducing ambient light. Next, at a step 2304, controlsignals can be sent to each lighting unit 100, commanding the lightingunit 100 to turn on and off in turn. Simultaneously, the camera cancapture an image during each “on” time at a step 2306. Next, at a step2308, the image is analyzed to locate the position of the “on” lightingunit 100. At a step 2310 a centroid can be extracted. Because no otherlight is present when the particular lighting unit 100 is on, there islittle issue with other artifacts to filter and remove from the image.Next, at a step 2312, the centroid position of the lighting unit 100 isstored and the system generates a table of lighting units 100 andcentroid positions. This data can be used to populate a configurationfile, such as that depicted in connection with FIG. 26 below. In sum,each lighting unit 100, in turn, is activated, and the centroidmeasurement determined. This is done for all of the lighting units 100.An image thus gives a position of the light system in a plane, such aswith (x,y) coordinates.

Where a 3D position is desired a second image may be captured totriangulate the position of the light in another coordinate dimension.This is the stereo problem. In the same way human eyes determine depththrough the correspondence and disparity between the images provided byeach eye, a second set of images may be taken to provide thecorrespondence. The camera is either duplicated at a known positionrelative to the first camera or the first camera is moved a fixeddistance and direction. This movement or difference in positionestablishes the baseline for the two images and allows derivation of athird coordinate (e.g., (x,y,z)) for the lighting unit 100.

Having developed a variety of embodiments for relating a lighting unit100 that has a physical location to an address for the lighting unit100, whether it be a network address, a unique identifier, or a positionwithin a series or string of lighting unit 100 that pass control signalsalong to each other, it is further desirable to have facilities forauthoring control signals for the lighting units. An example of such anauthoring system is a software-based authoring system, such asCOLORPLAY™ offered by Color Kinetics Incorporated of Boston, Mass.

An embodiment of this invention relates to systems and methods forgenerating control signals. While the control signals are disclosedherein in connection with authoring lighting shows and displays forlighting unit 100 in various configurations, it should be understoodthat the control signals may be used to control any system that iscapable of responding to a control signal, whether it be a lightingsystem, lighting network, light, LED, LED lighting system, audio system,surround sound system, fog machine, rain machine, electromechanicalsystem or other systems. Lighting systems like those described in U.S.Pat. Nos. 6,016,038, 6,150,774, and 6,166,496 illustrate some differenttypes of lighting systems where control signals may be used.

In certain computer applications, there is typically a display screen(which could be a personal computer screen, television screen, laptopscreen, handheld, gameboy screen, computer monitor, flat screen display,LCD display, PDA screen, or other display) that represents a virtualenvironment of some type. There is also typically a user in a real worldenvironment that surrounds the display screen. The present inventionrelates, among other things, to using a computer application in avirtual environment to generate control signals for systems, such aslighting systems, that are located in real world environments, such aslighting unit 100 positioned in various configurations described above,including linear configurations, arrays, curvilinear configurations, 3Dconfigurations, and other configurations.

An embodiment of the present invention describes a method 2400 forgenerating control signals as illustrated in the block diagram in FIG.24. The method may involve providing or generating an image orrepresentation of an image, i.e., a graphical representation 2402. Thegraphical representation may be a static image such as a drawing,photograph, generated image, or image that is or appears to be static.The static image may include images displayed on a computer screen orother screen even though the image is continually being refreshed on thescreen. The static image may also be a hard copy of an image.

Providing a graphical representation 2402 may also involve generating animage or representation of an image. For example, a processor may beused to execute software to generate the graphical representation 2402.Again, the image that is generated may be or appear to be static or theimage may be dynamic. An example of software used to generate a dynamicimage is Flash 5 computer software offered by Macromedia, Incorporated.Flash 5 is a widely used computer program to generate graphics, imagesand animations. Other useful products used to generate images include,for example, Adobe Illustrator, Adobe Photoshop, and Adobe LiveMotion.There are many other programs that can be used to generate both staticand dynamic images. For example, Microsoft Corporation makes a computerprogram Paint. This software is used to generate images on a screen in abit map format. Other software programs may be used to generate imagesin bitmaps, vector coordinates, or other techniques. There are also manyprograms that render graphics in three dimensions or more. Direct Xlibraries, from Microsoft Corporation, for example generate images inthree-dimensional space. The output of any of the foregoing softwareprograms or similar programs can serve as the graphical representation2402.

In embodiments the graphical representation 2402 may be generated usingsoftware executed on a processor, but the graphical representation 2402may never be displayed on a screen. In an embodiment, an algorithm maygenerate an image or representation thereof, such as an explosion in aroom for example. The explosion function may generate an image and thisimage may be used to generate control signals as described herein withor without actually displaying the image on a screen. The image may bedisplayed through a lighting network for example without ever beingdisplayed on a screen.

In an embodiment, generating or representing an image may beaccomplished through a program that is executed on a processor. In anembodiment, the purpose of generating the image or representation of theimage may be to provide information defined in a space. For example, thegeneration of an image may define how a lighting effect travels througha room. The lighting effect may represent an explosion, for example. Therepresentation may initiate bright white light in the corner of a roomand the light may travel away from this corner of the room at a velocity(with speed and direction) and the color of the light may change as thepropagation of the effect continues. In an embodiment, an imagegenerator may generate a function or algorithm. The function oralgorithm may represent an event such as an explosion, lighting strike,headlights, train passing through a room, bullet shot through a room,light moving through a room, sunrise across a room, or other event. Thefunction or algorithm may represent an image such as lights swirling ina room, balls of light bouncing in a room, sounds bouncing in a room, orother images. The function or algorithm may also represent randomlygenerated effects or other effects.

Referring again to FIG. 24, a light system configuration facility 2404may accomplish further steps for the methods and systems describedherein. The light system configuration facility may generate a systemconfiguration file, configuration data or other configurationinformation for a lighting system, such as the one depicted inconnection with FIG. 1.

The light system configuration facility can represent or correlate asystem, such as a lighting unit 100, sound system or other system asdescribed herein with a position or positions in an environment. Forexample, an LED lighting unit 100 may be correlated with a positionwithin a room. In an embodiment, the location of a lighted surface mayalso be determined for inclusion into the configuration file. Theposition of the lighted surface may also be associated with a lightingunit. In embodiments, the lighted surface 107 (e.g., as discussedfurther below in connection with FIG. 27) may be the desired parameterwhile the lighting unit 100 that generates the light to illuminate thesurface is also important. Lighting control signals may be communicatedto a lighting unit 100 when a surface is scheduled to be lit by thelighting unit 100. For example, control signals may be communicated to alighting system when a generated image calls for a particular section ofa room to change in hue, saturation or brightness. In this situation,the control signals may be used to control the lighting system such thatthe lighted surface 107 is illuminated at the proper time. The lightedsurface 107 may be located on a wall but the lighting unit 100 designedto project light onto the surface 107 may be located on the ceiling. Theconfiguration information could be arranged to initiate the lightingunit 100 to activate or change when the surface 107 is to be lit.

Referring still to FIG. 24, the graphical representation 2402 and theconfiguration information from the light system configuration facility2404 can be delivered to a conversion module 2408, which associatesposition information from the configuration facility with informationfrom the graphical representation and converts the information into acontrol signal, such as a control signal for a lighting unit 100. Thenthe conversion module can communicate the control signal 2410, such asto the lighting unit 100. In embodiments the conversion module mapspositions in the graphical representation to positions of lighting units100 in the environment, as stored in a configuration file for theenvironment (as described below). The mapping might be a one-to-onemapping of pixels or groups of pixels in the graphical representation tolighting units 100 or groups of lighting units 100 in the environment100. It could be a mapping of pixels in the graphical representation tosurfaces 107, polygons, or objects in the environment that are lit bylighting units 100. A mapping relation could also map vector coordinateinformation, a wave function, or an algorithm to positions of lightingunits 100. Many different mapping relations can be envisioned and areencompassed herein.

Referring to FIG. 25, another embodiment of a block diagram for a method2500 and system for generating a control signal is depicted. A lightmanagement facility 2502 is used to generate a map file 2504 that mapslighting units 100 to positions in an environment, to surfaces that arelit by the light systems, and the like. An animation facility 2508generates a sequence of graphics files 2510 for an animation effect. Aconversion module 2512 relates the information in the map file 2504 forthe lighting units 100 to the graphical information in the graphicsfiles. For example, color information in the graphics file may be usedto convert to a color control signal for a lighting unit 100 to generatea similar color. Pixel information for the graphics file may beconverted to address information for lighting units 100, which willcorrespond to the pixels in question. In embodiments, the conversionmodule 2512 includes a lookup table for converting particular graphicsfile information into particular lighting control signals, based on thecontent of a configuration file for the lighting system and conversionalgorithms appropriate for the animation facility in question. Theconverted information can be sent to a playback tool 2514, which may inturn play the animation and deliver control signals 2518 to lightingunits 100 in an environment.

Referring to FIG. 26, an embodiment of a configuration file 2600 isdepicted, showing certain elements of configuration information that canbe stored for a lighting unit 100 or other system. Thus, theconfiguration file 2600 can store an identifier 2602 for each lightingunit 100, as well as the position 2608 of that light system in a desiredcoordinate or mapping-system for the environment (which may be (x,y,z)coordinates, polar coordinates, (x,y) coordinates, or the like). Theposition 2608 and other information may be time-dependent, so theconfiguration file 2600 can include an element of time 2604. Theconfiguration file 2600 can also store information about the position2610 that is lit by the lighting unit 100. That information can consistof a set of coordinates, or it may be an identified surface, polygon,object, or other item in the environment. The configuration file 2600can also store information about the available degrees of freedom foruse of the lighting unit 100, such as available colors in a color range2612, available intensities in an intensity range 2614, or the like. Theconfiguration file 2600 can also include information about other systemsin the environment that are controlled by the control systems disclosedherein, information about the characteristics of surfaces 107 in theenvironment, and the like. Thus, the configuration file 2600 can map aset of lighting units 100 to the conditions that they are capable ofgenerating in an environment.

In an embodiment, configuration information such as the configurationfile 2600 may be generated using a program executed on a processor.Referring to FIG. 27, the program may run on a computer 2700 with agraphical user interface 2712 where a representation 2702 of anenvironment can be displayed, showing lighting units 100, lit surfaces107 or other elements in a graphical format. The interface may include arepresentation 2702 of a room for example. Representations of lights,lighted surfaces or other systems may then be presented in the interface2712 and locations can be assigned to the system. In an embodiment,position coordinates or a position map may represent a system, such as alight system. A position map may also be generated for therepresentation of a lighted surface for example. FIG. 27 illustrates aroom with lighting units 100. In other embodiments, the lighting units100 could be positioned on the exterior of a building, in windows of abuilding, or the like.

The representation 2702 can also be used to simplify generation ofeffects. For example, a set of stored effects can be represented byicons 2710 on the screen 2712. An explosion icon can be selected with acursor or mouse, which may prompt the user to click on a starting andending point for the explosion in the coordinate system. By locating avector in the representation, the user can cause an explosion to beinitiated in the upper corner of the room 2702 and a wave of light andor sound may propagate through the environment. With all of the lightingunits 100 in predetermined positions, as identified in the configurationfile 2600, the representation of the explosion can be played in the roomby the light system and or another system such as a sound system.

In use, a control system such as used herein can be used to provideinformation to a user or programmer from the lighting units 100 inresponse to or in coordination with the information being provided tothe user of the computer 2700. One example of how this can be providedis in conjunction with the user generating a computer animation on thecomputer 2700. The lighting unit 100 may be used to create one or morelight effects in response to displays 2712 on the computer 2700. Thelighting effects, or illumination effects, can produce a vast variety ofeffects including color-changing effects; stroboscopic effects; flashingeffects; coordinated lighting effects; lighting effects coordinated withother media such as video or audio; color wash where the color changesin hue, saturation or intensity over a period of time; creating anambient color; color fading; effects that simulate movement such as acolor chasing rainbow, a flare streaking across a room, a sun rising, aplume from an explosion, other moving effects; and many other effects.The effects that can be generated are nearly limitless. Light and colorcontinually surround the user, and controlling or changing theillumination or color in a space can change emotions, create atmosphere,provide enhancement of a material or object, or create other pleasingand or useful effects. The user of the computer 2700 can observe theeffects while modifying them on the display 2712, thus enabling afeedback loop that allows the user to conveniently modify effects.

FIG. 28 illustrates how the light from a given lighting unit 100 may bedisplayed on a surface. A lighting unit 100, sound system, or othersystem may project onto a surface. In the case of a lighting unit 100,this may be an area 2802 that is illuminated by the lighting unit 100.The lighting unit 100, or other system, may also move, so the area 2802may move as well. In the case of a sound system, this may be the areawhere the user desires the sound to emanate from.

In an embodiment, the information generated to form the image orrepresentation may be communicated to a lighting unit 100 or pluralityof lighting units 100. The information may be sent to lighting systemsas generated in a configuration file. For example, the image mayrepresent an explosion that begins in the upper right hand corner of aroom and the explosion may propagate through the room. As the imagepropagates through its calculated space, control signals can becommunicated to lighting systems in the corresponding space. Thecommunication signal may cause the lighting system to generate light ofa given hue, saturation and intensity when the image is passing throughthe lighted space the lighting systems projects onto. An embodiment ofthe invention projects the image through a lighting system. The imagemay also be projected through a computer screen or other screen orprojection device. In an embodiment, a screen may be used to visualizethe image prior or during the playback of the image on a lightingsystem. In an embodiment, sound or other effects may be correlated withthe lighting effects. For example, the peak intensity of a light wavepropagating through a space may be just ahead of a sound wave. As aresult, the light wave may pass through a room followed by a sound wave.The light wave may be played back on a lighting system and the soundwave may be played back on a sound system. This coordination can createeffects that appear to be passing through a room or they can createvarious other effects.

Referring to FIG. 27, an effect can propagate through a virtualenvironment that is represented in 3D on the display screen 2712 of thecomputer 2700. In embodiments, the effect can be modeled as a vector orplane moving through space over time. Thus, all lighting units 100 thatare located on the plane of the effect in the real world environment canbe controlled to generate a certain type of illumination when the effectplane propagates through the light system plane. This can be modeled inthe virtual environment of the display screen, so that a developer candrag a plane through a series of positions that vary over time. Forexample, an effect plane 2718 can move with the vector 2708 through thevirtual environment. When the effect plan 2718 reaches a polygon 2714,the polygon can be highlighted in a color selected from the colorpalette 2704. A lighting unit 100 positioned on a real world object thatcorresponds to the polygon can then illuminate in the same color in thereal world environment. Of course, the polygon could be anyconfiguration of light systems on any object, plane, surface, wall, orthe like, so the range of 3D effects that can be created is unlimited.

In an embodiment, the image information may be communicated from acentral controller. The information may be altered before a lightingsystem responds to the information. For example, the image informationmay be directed to a position within a position map. All of theinformation directed at a position map may be collected prior to sendingthe information to a lighting system. This may be accomplished everytime the image is refreshed or every time this section of the image isrefreshed or at other times. In an embodiment, an algorithm may beperformed on information that is collected. The algorithm may averagethe information, calculate and select the maximum information, calculateand select the minimum information, calculate and select the firstquartile of the information, calculate and select the third quartile ofthe information, calculate and select the most used informationcalculate and select the integral of the information or perform anothercalculation on the information. This step may be completed to level theeffect of the lighting system in response to information received. Forexample, the information in one refresh cycle may change the informationin the map several times and the effect may be viewed best when theprojected light takes on one value in a given refresh cycle.

In an embodiment, the information communicated to a lighting system maybe altered before a lighting system responds to the information. Theinformation format may change prior to the communication for example.The information may be communicated from a computer through a USB portor other communication port and the format of the information may bechanged to a lighting protocol such as DMX when the information iscommunicated to the lighting system. In an embodiment, the informationor control signals may be communicated to a lighting system or othersystem through a communications port of a computer, portable computer,notebook computer, personal digital assistant or other system. Theinformation or control signals may also be stored in memory, electronicor otherwise, to be retrieved at a later time. Systems such the iPlayerand SmartJack systems manufactured and sold by Color KineticsIncorporated can be used to communicate and or store lighting controlsignals.

In an embodiment, several systems may be associated with position mapsand the several systems may a share position map or the systems mayreside in independent position areas. For example, the position of alighted surface from a first lighting system may intersect with alighted surface from a second lighting system. The two systems may stillrespond to information communicated to the either of the lightingsystems. In an embodiment, the interaction of two lighting systems mayalso be controlled. An algorithm, function or other technique may beused to change the lighting effects of one or more of the lightingsystems in a interactive space. For example, if the interactive space isgreater than half of the non-interactive space from a lighting system,the lighting system's hue, saturation or brightness may be modified tocompensate the interactive area. This may be used to adjust the overallappearance of the interactive area or an adjacent area for example.

Control signals generated using methods and or systems according to theprinciples of the present invention can be used to produce a vastvariety of effects. Imagine a fire or explosion effect that one wishesto have move across a wall or room. It starts at one end of the room asa white flash that quickly moves out followed by a high-brightnessyellow wave whose intensity varies as it moves through the room. Whengenerating a control signal according to the principles of the presentinvention, a lighting designer does not have to be concerned with thelights in the room and the timing and generation of each light system'slighting effects. Rather the designer only needs to be concerned withthe relative position or actual position of those lights in the room.The designer can lay out the lighting in a room and then associate thelights in the room with graphical information, such as pixelinformation, as described above. The designer can program the fire orexplosion effect on a computer, using Flash 5 for example, and theinformation can be communicated to the lighting units 100 in anenvironment. The position of the lights in the environment may beconsidered as well as the surfaces 107 or areas 2802 that are going tobe lit.

In an embodiment, the lighting effects could also be coupled to soundthat will add to and reinforce the lighting effects. An example is a‘red alert’ sequence where a ‘whoop whoop’ siren-like effect is coupledwith the entire room pulsing red in concert with the sound. One stimulusreinforces the other. Sounds and movement of an earthquake using lowfrequency sound and flickering lights is another example of coordinatingthese effects. Movement of light and sound can be used to indicatedirection.

In an embodiment the lights are represented in a two-dimensional or planview. This allows representation of the lights in a plane where thelights can be associated with various pixels. Standard computer graphicstechniques can then be used for effects. Animation tweening and evenstandard tools may be used to create lighting effects. Macromedia Flashworks with relatively low-resolution graphics for creating animations onthe web. Flash uses simple vector graphics to easily create animations.The vector representation is efficient for streaming applications suchas on the World Wide Web for sending animations over the net. The sametechnology can be used to create animations that can be used to derivelighting commands by mapping the pixel information or vector informationto vectors or pixels that correspond to positions of lighting units 100within a coordinate system for an environment.

For example, an animation window of a computer 2700 can represent a roomor other environment of the lights. Pixels in that window can correspondto lights within the room or a low-resolution averaged image can becreated from the higher resolution image. In this way lights in the roomcan be activated when a corresponding pixel or neighborhood of pixelsturn on. Because LED-based lighting technology can create any color ondemand using digital control information, see U.S. Pat. Nos. 6,016,038,6,150,774, and 6,166,496, the lights can faithfully recreate the colorsin the original image.

Some examples of effects that could be generated using systems andmethods according to the principles of the invention include, but arenot limited to, explosions, colors, underwater effects, turbulence,color variation, fire, missiles, chases, rotation of a room, shapemotion, Tinkerbell-like shapes, lights moving in a room, and manyothers. Any of the effects can be specified with parameters, such asfrequencies, wavelengths, wave widths, peak-to-peak measurements,velocities, inertia, friction, speed, width, spin, vectors, and thelike. Any of these can be coupled with other effects, such as sound.

In computer graphics, anti-aliasing is a technique for removingstaircase effects in imagery where edges are drawn and resolution islimited. This effect can be seen on television when a narrow stripedpattern is shown. The edges appear to crawl like ants as the linesapproach the horizontal. In a similar fashion, the lighting can becontrolled in such a way as to provide a smoother transition duringeffect motion. The effect parameters such as wave width, amplitude,phase or frequency can be modified to provide better effects.

For example, referring to FIG. 29, a schematic diagram 2900 has circlesthat represent a single light 2904 over time. For an effect to‘traverse’ this light, it might simply have a step function that causesthe light to pulse as the wave passes through the light. However,without the notion of width, the effect might be indiscernible. Theeffect preferably has width. If however, the effect on the light wassimply a step function that turned on for a period of time, then mightappear to be a harsh transition, which may be desirable in some casesbut for effects that move over time (i.e. have some velocity associatedwith them) then this would not normally be the case.

The wave 2902 shown in FIG. 29 has a shape that corresponds to thechange. In essence it is a visual convolution of the wave 2902 as itpropagates through a space. So as a wave, such as from an explosion,moves past points in space, those points rise in intensity from zero,and can even have associated changes in hue or saturation, which gives amuch more realistic effect of the motion of the effect. At some point,as the number and density of lights increases, the room then becomes anextension of the screen and provides large sparse pixels. Even with arelatively small number of lighting units 100 the effect eventually canserve as a display similar to a large screen display.

Effects can have associated motion and direction, i.e. a velocity. Evenother physical parameters can be described to give physical parameterssuch as friction, inertia, and momentum. Even more than that, the effectcan have a specific trajectory. In an embodiment, each light may have arepresentation that gives attributes of the light. This can take theform of 2D position, for example. A lighting unit 100 can have allvarious degrees of freedom assigned (e.g., xyz-rpy), or any combination.

The techniques listed here are not limited to lighting. Control signalscan be propogated through other devices based on their positions, suchas special effects devices such as pyrotechnics, smell-generatingdevices, fog machines, bubble machines, moving mechanisms, acousticdevices, acoustic effects that move in space, or other systems.

Another embodiment of the invention is depicted in FIG. 30, whichcontains a flow diagram 3000 with steps for generating a control signal.First, at a step 3002 a user can access a graphical user interface, suchas the display 2712 depicted in FIG. 27. Next, at a step 3003, the usercan generate an image on the display, such as using a graphics programor similar facility. The image can be a representation of anenvironment, such as a room, wall, building, surface, object, or thelike, in which lighting units 100 are disposed. It is assumed inconnection with FIG. 30 that the configuration of the lighting units 100in the environment is known and stored, such as in a table orconfiguration file 2600. Next, at a step 3004, a user can select aneffect, such as from a menu of effects. In an embodiment, the effect maybe a color selected from a color palette. The color might be a colortemperature of white. The effect might be another effect, such asdescribed herein. In an embodiment, generating the image 3003 may beaccomplished through a program executed on a processor. The image maythen be displayed on a computer screen. Once a color is selected fromthe palette at the step 3004, a user may select a portion of the imageat a step 3008. This may be accomplished by using a cursor on the screenin a graphical user interface where the cursor is positioned over thedesired portion of the image and then the portion is selected with amouse. Following the selection of a portion of the image, theinformation from that portion can be converted to lighting controlsignals at a step 3010. This may involve changing the format of the bitstream or converting the information into other information. Theinformation that made the image may be segmented into several colorssuch as red, green, and blue. The information may also be communicatedto a lighting system in, for example, segmented red, green, and bluesignals. The signal may also be communicated to the lighting system as acomposite signal at a step 3012. This technique can be useful forchanging the color of a lighting system. For example, a color palettemay be presented in a graphical user interface and the-palette mayrepresent millions of different colors. A user may want to change thelighting in a room or other area to a deep blue. To accomplish her task,the user can select the color from the screen using a mouse and thelighting in the room changes to match the color of the portion of thescreen she selected. Generally, the information on a computer screen ispresented in small pixels of red, green and blue. LED systems, such asthose found in U.S. Pat. Nos. 6,016,038, 6,150,774 and 6,166,496, mayinclude red, green and blue lighting elements as well. The conversionprocess from the information on the screen to control signals may be aformat change such that the lighting system understands the commands.However, in an embodiment, the information or the level of the separatelighting elements may be the same as the information used to generatethe pixel information. This provides for an accurate duplication of thepixel information in the lighting system.

Using the techniques described herein, including techniques fordetermining positions of light systems in environments, techniques formodeling effects in environments (including time- and geometry-basedeffects), and techniques for mapping light system environments tovirtual environments, it is possible to model an unlimited range ofeffects in an unlimited range of environments. Effects need not belimited to those that can be created on a square or rectangular display.Instead, light systems can be disposed in a wide range of lines,strings, curves, polygons, cones, cylinders, cubes, spheres,hemispheres, non-linear configurations, clouds, and arbitrary shapes andconfigurations, then modeled in a virtual environment that capturestheir positions in selected coordinate dimensions. Thus, light systemscan be disposed in or on the interior or exterior of any environment,such as a room, building, home, wall, object, product, retail store,vehicle, ship, airplane, pool, spa, hospital, operating room, or otherlocation.

In embodiments, the light system may be associated with code for thecomputer application, so that the computer application code is modifiedor created to control the light system. For example, object-orientedprogramming techniques can be used to attach attributes to objects inthe computer code, and the attributes can be used to govern behavior ofthe light system. Object oriented techniques are known in the field, andcan be found in texts such as “Introduction to Object-OrientedProgramming” by Timothy Budd, the entire disclosure of which is hereinincorporated by reference. It should be understood that otherprogramming techniques may also be used to direct lighting systems toilluminate in coordination with computer applications, object orientedprogramming being one of a variety of programming techniques that wouldbe understood by one of ordinary skill in the art to facilitate themethods and systems described herein.

In an embodiment, a developer can attach the light system inputs toobjects in the computer application. For example, the developer may havean abstraction of a lighting unit 100 that is added to the codeconstruction, or object, of an application object. An object may consistof various attributes, such as position, velocity, color, intensity, orother values. A developer can add light as an instance in the object inthe code of a computer application. For example, the object could bevector in an object-oriented computer animation program or solidmodeling program, with attributes, such as direction and velocity. Alighting unit 100 can be added as an instance of the object of thecomputer application, and the light system can have attributes, such asintensity, color, and various effects. Thus, when events occur in thecomputer application that call on the object of the vector, a threadrunning through the program can draw code to serve as an input to theprocessor of the light system. The light can accurately representgeometry, placement, spatial location, represent a value of theattribute or trait, or provide indication of other elements or objects.

Referring to FIG. 31, in one embodiment of a networked lighting systemaccording to the principles of the invention, a network transmitter 3102communicates network information to the lighting units 100. In such anembodiment, the lighting units 100 can include an input port 3104 and anexport port 3108. The network information may be communicated to thefirst lighting unit 100 and the first lighting unit 100 may read theinformation that is addressed to it and pass the remaining portion ofthe information on to the next lighting unit 100. A person with ordinaryskill in the art would appreciate that there are other networktopologies that are encompassed by a system according to the principlesof the present invention.

Referring to FIG. 32, a flow chart 3200 provides steps for a method ofproviding for coordinated illumination. At the step 3202, the programmercodes an object for a computer application, using, for example,object-oriented programming techniques. At a step 3204, the programmingcreates instances for each of the objects in the application. At a step3208, the programmer adds light as an instance to one or more objects ofthe application. At a step 3210, the programmer provides for a thread,running through the application code. At a step 3212, the programmerprovides for the thread to draw lighting system input code from theobjects that have light as an instance. At a step 3214, the input signaldrawn from the thread at the step 3212 is provided to the light system,so that the lighting system responds to code drawn from the computerapplication.

Using such object-oriented light input to the lighting unit 100 fromcode for a computer application, various lighting effects can beassociated in the real world environment with the virtual world objectsof a computer application. For example, in animation of an effect suchas explosion of a polygon, a light effect can be attached with theexplosion of the polygon, such as sound, flashing, motion, vibration andother temporal effects. Further, the lighting unit 100 could includeother effects devices including sound producing devices, motionproducing devices, fog machines, rain machines or other devices whichcould also produce indications related to that object.

Referring to FIG. 33, a flow diagram 3300 depicts steps for coordinatedillumination between a representation on virtual environment of acomputer screen and a lighting unit 100 or set of lighting units 100 ina real environment. In embodiments, program code for control of thelighting unit 100 has a separate thread running on the machine thatprovides its control signals. At a step 3302 the program initiates thethread. At a step 3304 the thread as often as possible runs through alist of virtual lights, namely, objects in the program code thatrepresent lights in the virtual environment. At a step 3308 the threaddoes three-dimensional math to determine which real-world lighting units100 in the environment are in proximity to a reference point in the realworld (e.g., a selected surface 107) that is projected as the referencepoint of the coordinate system of objects in the virtual environment ofthe computer representation. Thus, the (0,0,0) position can be alocation in a real environment and a point on the screen in the displayof the computer application (for instance the center of the display. Ata step 3310, the code maps the virtual environment to the real worldenvironment, including the lighting units 100, so that events happeningoutside the computer screen are similar in relation to the referencepoint as are virtual objects and events to a reference point on thecomputer screen.

At a step 3312, the host of the method may provide an interface formapping. The mapping function may be done with a function, e.g.,“project-all-lights,” as described in Directlight API described belowand in Appendix A, that maps real world lights using a simple userinterface, such as drag and drop interface. The placement of the lightsmay not be as important as the surface the lights are directed towards.It may be this surface that reflects the illumination or lights back tothe environment and as a result it may be this surface that is the mostimportant for the mapping program. The mapping program may map thesesurfaces rather than the light system locations or it may also map boththe locations of the lighting units 100 and the light on the surface107.

A system for providing the code for coordinated illumination may be anysuitable computer capable of allowing programming, including aprocessor, an operating system, and memory, such as a database, forstoring files for execution.

Each lighting unit 100 may have attributes that are stored in aconfiguration file. An example of a structure for a configuration fileis depicted in FIG. 26. In embodiments, the configuration file mayinclude various data, such as a light number, a position of each light,the position or direction of light output, the gamma (brightness) of thelight, an indicator number for one or more attributes, and various otherattributes. By changing the coordinates in the configuration file, thereal world lights can be mapped to the virtual world represented on thescreen in a way that allows them to reflect what is happening in thevirtual environment. The developer can thus create time-based effects,such as an explosion. There can then be a library of effects in the codethat can be attached to various application attributes. Examples includeexplosions, rainbows, color chases, fades in and out, etc. The developerattaches the effects to virtual objects in the application. For example,when an explosion is done, the light goes off in the display, reflectingthe destruction of the object that is associated with the light in theconfiguration file.

To simplify the configuration file, various techniques can be used. Inembodiments, hemispherical cameras, sequenced in turn, can be used as abaseline with scaling factors to triangulate the lights andautomatically generate a configuration file without ever having tomeasure where the lights are. In embodiments, the configuration file canbe typed in, or can be put into a graphical user interface that can beused to drag and drop light sources onto a representation of anenvironment. The developer can create a configuration file that matchesthe fixtures with true placement in a real environment. For example,once the lighting elements are dragged and dropped in the environment,the program can associate the virtual lights in the program with thereal lights in the environment. An example of a light authoring programto aid in the configuration of lighting is included in U.S. patentapplication Ser. No. 09/616,214 “Systems and Methods for AuthoringLighting Sequences.” Color Kinetics Inc. also offers a suitableauthoring and configuration program called “ColorPlay.”

Further details as to the implementation of the code can be found in theDirectlight API document attached hereto as Appendix A. Directlight APIis a programmer's interface that allows a programmer to incorporatelighting effects into a program. Directlight API is attached in AppendixA and the disclosure incorporated by reference herein. Object orientedprogramming is just one example of a programming technique used toincorporate lighting effects. Lighting effects could be incorporatedinto any programming language or method of programming. In objectoriented programming, the programmer is often simulating a 3D space.

In the above examples, lights were used to indicate the position ofobjects which produce the expected light or have light attached to them.There are many other ways in which light can be used. The lights in thelight system can be used for a variety of purposes, such as to indicateevents in a computer application (such as a game), or to indicate levelsor attributes of objects.

Simulation types of computer applications are often 3D rendered and haveobjects with attributes as well as events. A programmer can code eventsinto the application for a simulation, such as a simulation of a realworld environment. A programmer can also code attributes or objects inthe simulation. Thus, a program can track events and attributes, such asexplosions, bullets, prices, product features, health, other people,patterns of light, and the like. The code can then map from the virtualworld to the real world. In embodiments, at an optional step, the systemcan add to the virtual world with real world data, such as from sensorsor input devices. Then the system can control real and virtual worldobjects in coordination with each other. Also, by using the light systemas an indicator, it is possible to give information through the lightsystem that aids a person in the real world environment.

Having appreciated that a computer screen or similar facility can beused to represent a configuration of lighting units 100 in anenvironment, and having appreciated that the representation of thelighting units 100 can be linked to objects in an objected-orientedprogram that generates control signals for the lighting units 100 thatcorrespond to events and attributes of the representation in the virtualworld, one can understand that the control signals for lighting units100 can be linked not only to a graphical representation for purposes ofauthoring lighting shows, but to graphical representations that arecreated for other purposes, such as entertainment purposes, as well asto other signals and data sources that can be represented graphically,and thus in turn represented by lighting units 100 in an environment.For example, music can be represented graphically, such as by a graphicequalizer that appears on a display, such as a consumer electronicsdisplay or a computer display screen. The graphical representation ofthe music can in turn be converted into an authoring signal for lightingunits 100, in the same way that a scripted show can be authored in asoftware authoring tool. Thus, any kind of signal or information thatcan be presented graphically can be translated into a representation ona lighting unit 100, using signal generating facilities similar to thosedescribed above, coupled with addressing and configuration facilitiesdescribed above that translate real world locations of lighting units100 into coordinates in a virtual environment.

One example of a representation that can be translated to a controlsignal for a lighting unit 100 is a computer game representation. Incomputer games, there is typically a display screen (which could be apersonal computer screen, television screen, laptop screen, handheld,gameboy screen, computer monitor, flat screen display, LCD display, PDAscreen, or other display) that represents a virtual world of some type.The display screen may contain a graphical representation, whichtypically embodies objects, events and attributes coded into the programcode for the game. The code for the game can attach a lighting controlsignal for a lighting unit 100, so that events in the game arerepresented graphically on the screen, and in turn the graphics on thescreen are translated into corresponding lighting control signals, suchas signals that represent events or attributes of the game in the realworld, such as flashing lights for an explosion. In some games theobjects in the game can be represented directly on an array of lights;for example, the game “pong” could be played on the side of thebuilding, with linear elements of lights representing game elements,such as paddles and the “ball.”

Referring to FIG. 34, a flow diagram 3400 depicts basic steps forproviding for coordinated illumination of a lighting unit 100 inconjunction with execution of a computer application such as a game. Ata step 3402, the provider of the system provides for obtaining a contentsignal 3402 that relates to content from the computer game. For example,the content signal may be computer code for execution of the computergame, or a video or other signal that comes from the computer gamesystem for display on a television or a monitor. At a step 3404 the hostestablishes a system for controlling illumination of a real worldenvironment, such as installing lights in a desired configuration. Thesystem further includes a processor 102 for allowing the host to changeillumination. Next, at a step 3408, the user coordinates theillumination control with the nature of the content signal obtained atthe step 3402. For example, upon receiving certain code or a certainsignal from the computer game system, the illumination system may becontrolled to change the illumination in the environment. Further detailwill be provided in connection with the embodiments described below.

In embodiments, the light system may be associated with code for thecomputer game, so that the computer game code is modified or created tocontrol the light system. For example, object-oriented programmingtechniques can be used to attach attributes to objects in the computergame, and the attributes can be used to govern behavior of the realworld light system. Object oriented techniques are known in the field,and can be found in texts such as “Introduction to Object-OrientedProgramming” by Timothy Budd, the entire disclosure of which is hereinincorporated by reference. It should be understood that otherprogramming techniques may also be used to direct lighting systems toilluminate in coordination with games, object oriented programming beingone of a variety of programming techniques that would be understood byone of ordinary skill in the art to facilitate the methods and systemsdescribed herein.

In an embodiment, a developer can attach the light system inputs toobjects in the game. For example, the developer may have an abstractionof a light that is added to the code construction, or object, of a gameobject. An object may consist of various attributes, such as position,velocity, color, intensity, or other values. A developer can add lightas an instance in the object in the code of a game. For example, thegame object could be a ship, with attributes, such as position, size,velocity, etc. A light source can be added as an instance of the objectof the game, and the light source can have attributes, such asintensity, color, and various effects. Thus, when events occur in thegame that call on the object of the ship, a thread running through theprogram can draw code to serve as an input to the processor of the lightsystem. The light can accurately represent geometry, placement, spatiallocation, represent a value of the attribute or trait, or provideindication of other elements or objects.

Referring to FIG. 35, a flow chart 3500 provides steps for a method ofproviding for coordinated illumination. At the step 3502, the programmercodes a game object for a computer game, using, for example,object-oriented programming techniques. At a step 3504, the programmingcreates instances for each of the objects in the game. At a step 3508,the programmer adds light as an instance to one or more objects of thegame. At a step 3510, the programmer provides for a thread, runningthrough the game code. At a step 3512, the programmer provides for thethread to draw lighting system input code from the objects that havelight as an instance. At a step 3514, the input signal drawn from thethread at the step 3512 is provided to the lighting control system, sothat the lighting system responds to code drawn from the computer game.

Using such object-oriented light input to the light system from code fora computer game, various lighting effects can be associated in the realworld with the virtual world objects of a computer game. For example, ina space battle game, a ship's light source can be attached with aneffect, such as sound, flashing, motion, vibration and other temporaleffects. Further, the light system could include other effects devicesincluding sound producing devices, motion producing devices, fogmachines, rain machines or other devices which could also produceindications related to that object.

Referring to FIG. 36, a flow diagram 3600 depicts steps for coordinatedillumination. In embodiments, the program code for the light has aseparate thread running on the machine. At a step 3602 the programinitiates the thread. At a step 3604 the thread as often as possibleruns through the list of virtual lights. At a step 3608 the thread doesthree-dimensional math to determine which real-world lights are inproximity to reference point in the real world (e.g., the head of theuser, the side of a building, etc.) that is projected as the referencepoint of the coordinate system of objects in the game. Thus, the (0,0,0)position could be the user's head in the real world and a point on thescreen in the game (for instance the center of the video display andtherefore the user's view into the virtual environment), or it could bea reference point, such as a location in an outdoor environment that hasa view of a side of a building, for example. At a step 3610, the codemaps the virtual environment and object in it to the real worldenvironment, including the light system, so that events happeningoutside the computer screen are similar in relation to the referencepoint as are virtual objects to a reference point on the screen. At astep 3612, the host may provide an interface for mapping. The mappingfunction may be done with a function, e.g., “project-all-lights,” asdescribed in Directlight API described below and in Appendix A, thatmaps real world lights using a simple user interface, such as drag anddrop interface. The placement of the lights may not be as important asthe surface the lights are directed towards. It may be this surface thatreflects the illumination or lights back to the user and as a result itmay be this surface that is the most important for the mapping program.The mapping program may map these surfaces rather than the light fixturelocations or it may also map both the locations of the fixtures and thelight on the surface. In one embodiment a screen, such as the cabanadiscussed above, can further simplify this mapping by providing a setand unchanging lighting system and screen that will have identicalproperties no matter the real world environment in which the system islocated.

Referring to FIG. 37, each real light may have attributes that arestored in a configuration file. An example of a structure for aconfiguration file 3700 is depicted in FIG. 37. The configuration filemay include various data, such as a light number 3702, a position ofeach light 3708, the position or direction of light output 3704, thegamma (brightness) of the light 3710, an indicator number for one ormore attributes 3712–3714, and various other attributes. By changing thecoordinates in the configuration file, the real world lights can bemapped to the virtual world in a way that allows them to reflect what ishappening in the virtual environment. The developer can thus createtime-based effects, such as an explosion. There can then be a library ofeffects in the code that can be attached to various game attributes.Examples include explosions, fades in and out, etc. The developerattaches the effects to virtual lights in the game. For example, when anexplosion is done, the light goes off in the game, reflecting thedestruction of the object that is associated with the light in theconfiguration file.

To simplify the configuration file, various techniques can be used. Inembodiments, hemispherical cameras, sequenced in turn, can be used as abaseline with scaling factors to triangulate the lights andautomatically generate a configuration file without ever having tomeasure where the lights are. Referring to the flow diagram 3800 of FIG.38, in embodiments, the configuration file is created at a step 3802.The configuration file can be typed in, or can be put into a graphicaluser interface that can be used to drag and drop light sources onto arepresentation of a room. At a step 3804, the developer can create aconfiguration file that matches the fixtures with true placementrelative to a user's coordinate in the real room. For example, once thelighting elements are dragged and dropped in the environment, at a step3808 the program can associate the virtual lights in the program withthe real lights in the environment. An example of a light authoringprogram to aid in the configuration of lighting is included in U.S.patent application Ser. No. 09/616,214 “Systems and Methods forAuthoring Lighting Sequences.”Color Kinetics Inc. also offers a suitableauthoring and configuration program called “ColorPlay.”

It is also possible to have lighting units 100 that are attached to dataor signals that are not objects in a computer game, such as to indicateanother environmental condition, such as the end of the work day,sunset, sunrise, or some other indicator that is useful to a playerimmersed in the game. The lighting units 100 may also provide mood oraesthetics such as projecting the presence of a person, creature object,or other thing such as by an aura or their traits of good and evil.These traits could be associated with colors and intensities.Approaching a dangerous object could also have the lights switch to awarning mode (such as flashing red) to warn the user of the danger.

In one embodiment of the invention, the lighting system can be replacedor augmented by lighting units 100 already present in the real worldenvironment. For instance, one can create a game that involves the useof the lights in the house. One can use the game itself as a userinterface for the lights in the house. A good example might be a horrorgame where when the lights go out in the game environment, they also goout in the real world room. Such an environment could be highly engagingto a user who is placed even more within the virtual world in which theyare playing by having that world truly interact with the real worldwhere they are.

The real lights in an environment, such as house lights or lightingunits 100 on the outside of a building could be made game objects forthe game itself, or particular light arrangements could be created forthe purposes of playing particular games. Referring to FIG. 39, a system3900 for using an array of lights 3902 in conjunction with a computersystem 3904 (which can be any conventional computer system that providesa connection 3908 to the lights 3902. The array 3902 can be disposed ona wall or the ceiling, as depicted in FIG. 39. The individual lightingunits 100, or lights 104A, 104B, 104C, 104D can be provided with changesin on-off status, color, and intensity, serving in effect like pixels ondisplay. Thus, a version of a game such as “pong” or other simple gamecan be played with an array of lights in the light system, with thelights in the array serving as “pixels” analogous to the virtualenvironment on the screen. In such embodiments it may be unnecessary touse the screen of the computer system 3904 to play the computer game.Alternatively, one player could use the screen to control the game beingplayed, while other players are totally immersed in a gamingenvironment. As discussed above, a player could be playing a horror gamewhile the players in the next room or another environment areexperiencing the light sensations from his play without control over thegame environment. Essentially they can experience the game play as athird party along for the ride in the game. Further the layout of lightsin a house could denote the parameters for a particular game. Forinstance, a game could be created where the user is fighting off evilmonsters in their own home and the lighting in their home is acting inthe same manner as the lighting in the game. Such a game environmentcould be creating by receiving information about the location of lightsin a house, and generating the game world to conform to that lighting.

FIG. 40 depicts a flow chart 4000 with steps for programming a system tocoordinate house lights with a game. At a step 4002 the programmerlocates the real-world location of each of the house lights. At a step4004 the programmer maps the lights, such as by dragging and droppingrepresentations of the locations of the lights onto a virtualrepresentation of the house on the display screen of the computer. At astep 4008 the program generates a game world that contains virtuallights that match the lights of the real world. Then, changes in thegame lights can change the room lights, such as in hue or intensity.

It would be easily understood by one of skill in the art that thismulti-party experience could be extended to multi-party competitivegames such as those commonly played across networks. It could be thecase where a user is actually trying to affect the real worldenvironment in which another user is playing. For instance, in the gamea first user could be trying to disable an opponent's ship by knockingout its ability to perceive the world around it. For instance it couldknock out the ship's forward or rear views. In the real world a secondplayer could actually have various views knocked out (lights beingdisabled) as the first player accomplishes his goal. In an even morerealistic example, the first user could be trying to turn the lights outon the second user. The first person may also directly affect the otherperson's room lights by, for example, turning Is the lights off orchanging their color, or the first person may indirectly change thelighting conditions in the other persons room by, for example, gettingclose to the other persons virtual room and tripping a sensor. The firstperson may also be carrying an object that generates light or reflectslight. This object may trigger the lighting in the other person's roomto indicate or warn the other person of the first persons presence.

Although the figures and description above show primarily computergames, it would be clear to one of skill in the art to carry the systeminto other types of computing devices and environments. A computingdevice can include, but is not limited to, any type of computer, aconsole game system (such as the Playstation series manufactured bySony), a Personal Digital Assistant (PDA), a telephone, a WebTV orsimilar system, a thin client, or any other type of system on which auser is able to carry out applications where a lighting system couldenhance the display provided to the user. There can be systems where thelighting system provides the only source of visual information to theuser.

For console game systems, one of skill in the art would understand thatlibraries customized onto the proprietary chipsets for console gamesthat drive light system output, similar to the Directlight programmer'sinterface, could be created without undue experimentation. Console gamesgenerally have proprietary chipsets so it may be necessary to generatecustom libraries for these systems. The systems and libraries for theconsoles could function in much the same way as a PC-based game. Theconsole may include a USB, serial, parallel, firewire, optical, modem orother communications port to communicate with the lighting system. Thelighting information could also be sent through a controller port. Acontroller port may be used for a controller communication as well aslighting control information. Separate controller ports could also beused. For example, a first controller port may be used to communicatewith a controller and another controller port may be used to communicatewith the lighting system.

Many games and computer systems include input devices such as ajoystick, mouse, keyboards, gloves, tactile mouse, dance pads, exerciseequipment, or other input devices. These devices are generally used by auser to control aspects of a game or other parameter of a computerprogram. Each of these input devices could also be configured to affectcontrol signals for lighting units 100. For example, a mouse could beused to control the lights in a room or on the outside of a building. Asthe mouse is moved the lighting units 100 could respond, or as the userdances on a dance pad the lights could generate a color representationof their dance. For instance, their impact force with the pad couldtranslate to an intensity measurement, while their position translatedto a color. The input device may also direct sound simultaneously or inconjunction with the light.

In an embodiment of the invention the lighting system could also beassociated with sensor or data inputs that could be associated with thevirtual environment such as a microphone, camera, heat, cooling or otherinputs. For example, a user could control a game object by providingvoice instructions through the microphone, which could be synthesizedinto commands for an application, and in turn used to control theillumination of the environment through a lighting system.

The embodiments discussed above relate primarily to games involvingreal-time simulation and for such types of games there are numerousapplications for lighting systems. For instance: flight games could useindicators for controls or important statistics like fuel level; racinggames could have motion or indicate third party activities like theapproach of police vehicles: skateboarding, snowboarding, or otherperformance sport simulators can have indicators of movement, indicatorsof third party actions, or rewards such as flashbulbs for particularlyfine performances. Other types of simulators can use lighting systemsincluding, but not limited to, roller-coaster simulations, closed bootharcade simulators, or location-based entertainment games (large gamesinside a booth with multiple players). Further, it would be understoodby one of skill in the art that the above are merely a limited overviewof possibilities and there are many more applications that could beperformed without undue experimentation.

In other embodiments, a musical application could also be used, allowingfor the choreographing of music to light, or the generation of light asa portion of the generation of music. Alternatively light could be usedto help a user learn to play music. For instance light could beprojected that indicates a particular key a user should press on akeyboard. In time, a user unable to read music could teach themselves toplay instruments and music for the user's performance could be providedas light signals.

An embodiment of the present invention could be a puzzle that consistsof getting lighting units 100 into a particular lighting configuration.A player could, for example, “solve” a real-world Rubik's cuberepresentation consisting of lighting units 100. An embodiment of theinvention may be used in flight simulators to change the ambientlighting conditions from day to night, or changing the lightingconditions as the horizon changes or associated with other aspects ofthe simulator.

Many configurations of lighting units 100 require large numbers oflighting units 100, in some cases distributed over great distances, suchas in outdoor lighting applications like lighting buildings. Theinstallation of a large number of lighting units 100 in an installationcan be very complex and can introduce wiring issues, the use of powerconverters or power supplies and, in the case of intelligent fixtures,the use of cabling to send data to and from the fixtures for controlpurposes. In addition to difficulties in addressing and configuringcontrol signals for such configurations of lighting units 100, methodsand systems for which are disclosed above, it is also important toprovide power sources 108 that are suitable for lighting units 100 thatare disposed in such large configurations. Thus, methods and systems areprovided herein for offering improved power sources 108 for lightingunits 100.

Lighting systems of various types present different issues when tappinginto power networks. For example, incandescent lighting sources aretypically powered by a simple resistive load to the power network. Overthe years, the increased acceptance and use of fluorescent and HID lampshas increased the use of electronics to drive loads, and these devices,along with computers and appliances, have introduced some side effectsin power networks due to the ballasts and power supplies theyincorporate. The electrical current that these newer systems draw isvery different from resistive loads of conventional light sources, whichintroduces issues for electricity consumers and providers.

In the past, power issues arose from linear power supplies, which drewcurrent in a sinusoidal fashion. As an alternative, switching powersupplies are small and efficient compared to the linear supplies used inthe past. However, switching supplies introduce distortions of the inputcurrent. Switching supplies draw current in pulses and not in a smoothsinusoidal fashion. Thus the alternating voltage (typically a 50 or 60Hz sine wave in most power distribution systems) and current are oftenout of phase. As a result, voltage peaks and lows do not correspond withcurrent peaks and lows. This distortion causes problems with powerdistribution with the local grid and can introduce capacity issues inpower distribution and local circuits.

In an ideal situation, both the input current and voltage would be inphase and sinusoidal. For a given situation, power factor can be definedas the real power (Watts) divided by the apparent power(Current×Voltage). While it may appear that power is simply defined asthe product of voltage and current, if voltage and current are out ofphase, then the product can be very different from the real power usedby a device. For a simple resistive load the power factor is unity, or1.0. For switching supplies, however, the power factor can be muchlower, e.g., 0.6. Fixing low power factor can be accomplished throughthe use of power factor correction (PFC). Good quality PFC can bring theratio of real power to apparent power in a switching power supply to0.99, thus mitigating the problems associated with poor power factor.

Since LED-based lighting units 100 and most electronics are low voltagesystems, the use of power conversion is quite common. In many cases,there is an off-board power supply that is a transformer or equivalentthat is directly plugged into the lo wall and provides lower voltage ACor, more typically, DC power. Thus, high voltage and low voltage systemsare often separate. In most consumer electronics these power supplysystems are integral to the device; that is, they plug directly into thewall and any necessary power conversion is carried out internal to thedevice. This is most practical for most electronics and eliminates theneed for separate boxes for power supplies and electronics.

However, in most current LED-based lighting systems, an off-board powersupply is used, because a single power supply can often supply energy toa multitude of lighting units 100, keeping the overall cost of thesystem lower than if each lighting unit 100 had a power supply on board.The integration of such power supplies into fixtures would have beenprohibitive both in cost and physical space required. In addition,onboard power supplies create thermal issues. Heat is damaging to manyelectronics components. However, in installations where lighting units100 are located apart, the additional costs of cabling in addition tomaintenance issues can outweigh the initial benefits of a distributedpower system.

In general the impedance of the power grid tends to be low, so thatdelivery of power is efficient. The impedance of a power supply, or anydevice that uses power, should not be non-linear; otherwise, the devicecan generate harmonics on the power line that are wasteful andundesirable. Among other things, non-linear impedance reduces powerfactor.

For certain lighting units 100, it is preferable to integrate a powersupply system directly into a lighting unit 100, in order to provideclean, regulated and power-factor-corrected energy and power. In suchsituations, it is also preferable to eliminate unnecessary componentsand parts.

Disclosed herein are several embodiments of circuits for single-stageand two-stage power-factor-corrected power supplies for lighting units100 or other devices that benefit from power factor correction. A keyfeature of each design is a feedback facility for adjustment of theoutput power. A key challenge is the elimination of large capacitors.One preferred embodiment uses a fly-back converter in a power supplywith a current source.

Design of power supplies requires development of effective facilities tostore and release energy to provide clean power with little ripple andgood power factor. The challenge is to provide good, efficient, lowcost, PFC power. As with most design challenges, tradeoffs arenecessary.

One design choice in designing a PFC power supply is the choice ofsingle-stage versus two-stage design. A single stage design appears tohave some advantages over a two-stage design, such as requiring fewercomponents and thus having a lower manufacturing cost; however, theseadvantages have a trade-off in performance. To increase the performanceby decreasing the ripple, a system needs more energy storage to beshifted to the output of the circuit.

FIG. 41 shows a typical low voltage switching power supply thatincorporates a line filter 4102, power factor correction (PFC) facility4104, a capacitor 4108 and a DC—DC converter 4110. The line filterprovides general rectification and filtering of the high voltage ACinput. The PFC facility 4104 insures that the voltage and current are inphase. The output capacitor 4108 provides a level of energy storage inthe event of lapsed input power. This capacitor value is usually sizedto permit a missing cycle of input waveform without affecting theoutput. Finally the DC output voltage is converted to a desired DC levelsuch as 24VDC. In general, switching power supplies, such as this one.

FIG. 42 shows a block diagram 4200 of a typical low voltage power supplywith a line filter 4102. Note the absence of any power factor correctionfacility. The energy storage capacitor 4108 is shown between the linefilter 4102 and the DC—DC converter 4110. This power supply can provideequivalent outputs but cannot provide power-factor-corrected outputs.Thus, it can present a problem with local power distribution.

FIG. 43 shows another power supply arrangement with an integrated PFCand DC—DC converter 4302. This is termed a single-stage PFC low voltagepower supply. The benefits of a single stage include lower costs andsmaller size. Note that the energy storage capacitor 4108 is now at theoutput end to maintain output under cycle loss. Without this, the outputis adversely affected by power lapse and holds up the ability tomaintain voltage level.

FIG. 44 is a more detailed breakdown of FIG. 43 with the line filter4102. The circuit diagrams presented herein are presented in generalfunctional form; many variations with similar functional blocks andsimilar overall functionality are possible and are intended to beencompassed herein. The control circuit 4402 provides rapid switching ofswitch 4404 for the purposes of providing a regulated output. This is astandard element in switching power supplies.

FIG. 45 continues FIG. 44 to the output stage. Element 4108 isduplicated to show the overlap. The output of the high voltage DC outputis then fed into the DC—DC converter as shown by a representativecircuit diagram. Again, a control circuit 4502 is shown that measuresand responds to the output to provide a feedback system to adjust andregulate the output in real-time to maintain voltage levels. The currentin the inductor 4504 is rapidly charged and then discharged throughdiode D3 4508 through control of switch Q2 4510 is typical of suchcircuits. A small output capacitor 4512 is appended to the output toprovide additional energy storage and minimize output ripple.

FIG. 46 is an alternative embodiment with a combination of a powerfactor correction facility 4104, energy storage capacitor 4108 and DC—DCConverter 4110.

FIG. 47 is an alternative embodiment to the block diagram of thesingle-stage element of 4302 in FIG. 43. This combination provides asmaller and lower cost alternative to the two-stage system of FIG. 46.

FIG. 48 is a block diagram of a typical LED Illumination power and datasupply system for a lighting unit 100. As shown in block 4802, the powersupply section is equivalent to FIG. 41 and provides a low-voltage busto directly drive LED-based lighting units 100. This is equivalent toseveral commercial low voltage systems including the iColor Accentlighting product from Color Kinetics Incorporated of Boston, Mass. Thedata converter 4804 provides information to the lighting units 100 tocommunicate lighting levels, colors, effects, and other information in adata stream. The communication and power may be provided over a unifiedpower and data cable or over traces on a circuit board or one of manyways to provide data or power to electronics devices including wirelesscommunication systems.

The lighting units 100 are the recipient of the power and the data and,in this instantiation, are fed low voltage power to control and driveLED light sources 104. With low voltages, a voltage drop down the lengthof a cable is a given, and this limits the feasible length of theconfiguration of lighting units 100 in a lighting system. The resistanceof a wire, while small, is significant and must be taken into account inthe system design. Typical lengths for such low voltage systems may be afew ten of meters of cable length. Voltage drop that exceeds a certainamount means that the voltage will decrease to an unusable level at somedistance, so that the electronics within the lighting units 100 cannotoperate. The voltage drop effect can be mitigated through larger gaugeof wire, which has a lower electrical resistance. However, such wirebecomes quite heavy and expensive, and there are practical issues ofinstallation and cost that make a higher-gauge wire approach less thanoptimal.

FIG. 49 is an embodiment of a power-factor-corrected power supply thatsolves many of the problems of conventional power supplies for lightingunits 100. In FIG. 49, the power factor correction facility 4104 and theenergy storage capacitor 4108 are separated from the DC—DC converter4110 by providing a high voltage power bus. Power is the product ofvoltage and current. In Ohm's Law the relationship of voltage andcurrent is in the form V=IR. Thus power also equals I²R; that is, poweris proportional to the square of the current. If the voltage isincreased, then the current can be decreased, and the effect of wireresistance and resultant power loss is diminished. FIG. 49 shows anembodiment of a high voltage bus that allows very long lengths of wireand still allow lighting units 100 to be powered and controlled. Theelement labeled 4902 includes the Line Filter 4102, PFC facility 4104and storage capacitor 4108, but now power is routed through a long cablefor a particular project or installation to the lighting units 100,using the high voltage bus. A DC—DC converter 4110 is co-located at thelighting unit 100, which provides power to the lighting unit 100 orother device. The is high voltage input provides minimal cost perlighting unit 100, and it allows very long lines, thus minimizing systemcost and installation cost in configurations where lighting units 100are spread over large distances, such as on building exteriors. Bycomparison to lighting units 100 powered by conventional power supplies,line lengths can grow dramatically, for example by a factor of ten ormore. Also, the wire gauge can be much smaller than in the low voltage,high current system shown in FIG. 48. The particular advantage of thisseparate-stage system is that the separation of the two stagesfacilitates large installations through the use of a low-loss highvoltage bus. This two stage design is not necessarily incorporated intoa single housing, although it is possible for it to be so.

FIG. 50 shows another embodiment of a two-stage design, in this casewith a direct connection of a high voltage bus to line power (e.g. 120or 240 VAC) through an optional line filter 4102. This implementationstill has all power and data originating from a specific source, perhapsa single enclosure, to provide power and data to a number of fixtures.The lower part of FIG. 50 shows another embodiment of apower-factor-correct power supply. This embodiment takes a further stepof allowing each of the fixtures to directly connect to line powerthrough a wall plug or direct connection to power locally. This obviatesthe need to run additional and specific wires for that particularinstallation and allows the use of standard electrical contractors toinstall the wiring for powering this system. The data converter can, asshown earlier, be provided by a separate data bus, which can be wired,through the power line or another wireless system. This solution givesthe greatest flexibility in location and installation.

Various embodiments of power-factor-correction are intended to beencompassed herein. Further information can be found in Horowitz andHill, The Art of Electronics, 2ed. Cambridge University Press, 1991.Section 6.19, Switching Regulators and DC—DC Converters, which isincorporated by reference herein.

FIG. 51 illustrates a lighting system 5100 according to the principlesof the present invention, similar to the lighting system described inconnection with FIG. 1. Lighting system 5100 may include one or moreLEDs. In an embodiment, the LEDs 104A, 104B, and 104C may producedifferent colors (e.g. 104A red, 104B green, and 104C blue). Thelighting system 5100 may also include a processor 102 wherein theprocessor 102 may independently control the output of the LEDs 104A,104B, and 104C. The processor may generate control signals to run theLEDs such as pulse modulated signals, pulse width modulated signals(PWM), pulse amplitude modulated signals, analog control signals orother control signals to vary the output of the LEDs. In an embodiment,the processor may control other circuitry to control the output of theLEDs. The LEDs may be provided in strings of more than one LED that arecontrolled as a group and the processor 102 may control more than onestring of LEDs. A person with ordinary skill in the art would appreciatethat there are many systems and methods that could be used to operatethe LED(s) and or LED string(s) and the present invention encompassessuch systems and methods.

A lighting system 5100 may be a lighting unit 100 according to theprinciples the present invention, and either may generate a range ofcolors within a color spectrum. For example, the lighting unit 100 maybe provided with a plurality of LEDs (e.g. 104A-D) and the processor 102may control the output of the LEDs such that the light from two or moreof the LEDs combine to produce a mixed colored light. Such a lightingsystem may be used in a variety of applications including displays, roomillumination, decorative illumination, special effects illumination,direct illumination, indirect illumination or any other applicationwhere it would be desirable. Many such lighting systems may be networkedtogether to form large networked lighting applications.

In an embodiment the LEDs 104 and or other components comprising alighting unit 100 may be arranged in a housing (not shown in FIG. 51).The housing may be adapted to provide illumination to an area and may bearranged to provide linear lighting patterns, circular lightingpatterns, rectangular, square or other lighting patterns within a spaceor environment. For example, a linear arrangement may be provided at theupper edge of a wall along the wall-ceiling interface and the light maybe projected down the wall or along the ceiling to generate certainlighting effects. In an embodiment, the intensity of the generated lightmay be sufficient to provide a surface (e.g. a wall) with enough lightthat the lighting effects can be seen in general ambient lightingconditions. In an embodiment, such a housed lighting system may be usedas a direct view lighting system. For example, such a housed lightingsystem may be mounted on the exterior of a building where an observermay view the lighted section of the lighting system directly. Thehousing may include diffusing, or other, optics such that the light fromthe LED(s) 104 is projected through the optics. This may aid in themixing, redirecting or otherwise changing the light patters generated bythe LEDs. The LED(s) 104 may be arranged within the housing 5212, on thehousing 5212 or otherwise mounted as desired in the particularapplication.

FIG. 52 illustrates a method for programming a lighting unit 100according to the principles of the present invention. The method mayinvolve providing a lighting system 5202, providing a programming device5204, selecting and or generating an address or other information on theprogramming device 5208, communicating the selected and or generatedaddress the lighting system 5210, and storing the communicated addressin the memory of the lighting system 5212.

Although many of the examples contained herein use LED based lightingdevices as the lighting system, other illumination sources may beincorporated into the lighting system. These illumination sources may beassociated with addressable controllers that require setting whenincorporated as a part of the network or have preprogrammed lightingcontrol programs to be selected, modified or generated. A programmingdevice according to the principles of the present invention may be usedto program the address, or perform other functions as described herein,in these illumination sources as well.

FIG. 53 illustrates a process flow diagram according to the principlesof the present invention. The present invention is a method 5300 ofcontrolling light from a plurality of lighting units that are capable ofbeing supplied with addresses. The method may comprise the steps ofequipping each of the lighting units 100 with a processing facility forreading data and providing instructions to the lighting units to controlat least one of the color and the intensity of the lighting units, eachprocessing facility capable of being supplied with an address 5302. Forexample, the lighting units may include a lighting unit 100 where theprocessor 102 is capable of receiving network data. The processor mayreceive network data and operate the light sources 104 in a mannerconsistent with the received data. The processor 102 may read data thatis explicitly or implicitly addressed to it or it may respond to all ofthe data supplied to it. The network commands may be specificallytargeting a particular lighting system with an address or group oflighting systems with similar addresses or the network data may becommunicated to all network devices. A communication to all networkdevices may not be addressed but may be a universe or world stylecommand.

The method may further comprise the steps of supplying each processorwith an identifier, the identifier being formed of a plurality of bitsof data 5304. For example, each lighting unit 100 may include memory 114(e.g. EPROM), and the memory 114 may contain a serial number that isunique to the light or processor. Of course, the setting of the serialnumber or other identifier may be set through mechanical switches orother devices and the present invention is not limited by a particularmethod of setting the identifier. The serial number may be a 32-bitnumber in EPROM for example. Various addressing and configurationschemes described above can be used.

In one embodiment, the method may also comprise sending to a pluralityof such processors an instruction, the instruction being associated witha selected and numbered bit of the plurality of bits of the identifier,the instruction causing the processor to select between an “on” state ofillumination and an “off” state of illumination for lighting unitscontrolled by that processor, the selection being determined by thecomparison between the instruction and the bit of the identifiercorresponding to the number of the numbered bit of the instruction 5308.For example, a network command may be sent to one or more lighting unitsin the network of lighting units. The command may be a global commandsuch that all lighting units that receive the command respond. Thenetwork command may instruct the processors 102 to read the first bit ofdata associated with its serial number. The processor may then comparethe first bit to the instructions in the network instruction or assessif the bit is a one or a zero. If the bit is a one, the processor mayturn the lighting unit on or to a particular color or intensity. Thisprovides a visual representation of the first bit of the serial number.A person or apparatus viewing the light would understand that the firstbit in the serial number is either a one (e.g. light is on) or a zero(e.g. light is off). The next instruction sent to the light may be toread and indicate the setting of the second bit of the address. Thisprocess can be followed for each bit of the address allowing a person orapparatus to decipher the address by watching the light turn on and oroff following each command.

The method may further comprise capturing a representation of whichlighting units are illuminated and which lighting units are notilluminated for that instruction 5310. For example, a camera, video orother image capture system may be used to capture the image of thelight(s) following each such network command. Repeating the precedingtwo steps, 5308 and 5310, for all numbered bits of the identifier5312allows for the reconstruction of the serial number of each light in thenetwork.

The method may further comprise assembling the identifier for each ofthe lighting units, based on the “on” or “off” state of each bit of theidentifier as captured in the representation 5314. For example, a personcould view the light's states and record them to decipher the lightsserial number or software can be written to allow the automatic readingof the images and the reassembly of the serial numbers from the images.The software may be used to compare the state of the light with theinstruction to calculate the bit state of the address and then proceedto the next image to calculate the next bit state. The software may beadapted to calculate a plurality or all of the bit states of theassociated lighting units in the image and then proceed to the nextimage to calculate the next bit state. This process could be used tocalculate all of the serial numbers of the lighting units in the image.

The method may also comprise assembling a correspondence between theknown identifiers (e.g. serial numbers) and the physical locations ofthe lighting units having the identifiers 5318. For example, thecaptured image not only contains lighting unit state information but italso contains lighting unit position information. The positioning may berelative or absolute. For example, the lights may be mounted on theoutside of a building and the image may show a particular light is belowthe third window from the right on the seventy second floor. Thislighting units position may also be referenced to other lighting unitpositions such that a map can be constructed which identifies all of theidentifiers (e.g. serial numbers) with a light with a position. Oncethese positions and or lighting units are identified, network commandscan be directed to the particular lighting units by addressing thecommands with the identified and having the lighting unit respond todata that is addressed to its identifier. The method may furthercomprise controlling the illumination from the lighting units by sendinginstructions to the desired lighting units at desired physicallocations. Another embodiment may involve sending the now identifiedlighting units address information such that the lighting units storethe address information as its address and will respond to data sent tothe address. This method may be useful when it is desired to address thelighting units in some sequential scheme in relation to the physicallayout of the lighting units. For example, the user may want to have theaddresses sequentially increase as the lighting fixtures go from left toright across the face of a building. This may make authoring of lightingsequences easier because the addresses are associated with position orprogression.

Referring to FIG. 54, a lighting system 5400 is provided, comprised of aseveral elements. The lighting system 5400 includes a plurality oflinearly disposed light sources 104A–104D, which in an embodiment areLEDs of a variety of colors, such as red, green, amber, white and blue.The lighting units 5402 are disposed in combination with a processor 102on a board 5408. The board 5408 is located in a housing 5410, which hastwo end portions 5412. The housing may be adapted for outdoor use,sealed to prevent encroachment from moisture. There is also a cover 5414that is substantially transparent, allowing transmission of light fromthe light sources 104A–104D to a viewer of the lighting system 5400. Thecover may be watertight or water resistant. Through the end portions5412 are disposed a plurality of wires 5418, which connect to a junctionbox 5420. The lighting system 5400 can also be connected to similar suchsystems by wiring through additional junction boxes 5420. Thetransparent cover 5414 allows the light from the lighting system 5400 totransmit through at a substantially unchanged beam angle to the viewer.The lighting systems 5400 can be disposed by connecting them to asurface, such as an interior or exterior wall of a building. Thelighting systems 5400 can be configured in rows, or in other forms toprovide signage, displays, or illumination effects through instructionsrelayed through the wires 5418 to the processor 102. A wide variety ofeffects can be created.

Referring to FIG. 55, another embodiment of a lighting system 5500 isprovided, comprised of several different elements. The lighting system5500 includes a housing 5502, which includes a cover 5504 and endportions 5508. The housing may be watertight or water resistant, so thatit is suitable for outdoor applications. Inside the cover 5504 aredisposed a plurality of lighting units 100 that are disposed in adesired configuration, such as a linear configuration indicated in FIG.55. In other embodiments, the lighting units 100 may be disposed inrows, in triads, in curves, or in a matrix. Similarly, the housing 5502,while substantially straight and cylindrical in FIG. 55, may in otherembodiments be curved, disposed in rows, or in other configurations,such as geometric shapes, letters, numbers, or other configurations,similar to the wide range of configurations possible with neon signs.The lighting units 100 may be provided in combination with a processingfacility or processor 102 for handling data and providing instructionsto the lighting units 5510, the processing facility 102 capable of beingsupplied with an address for addressing data to control at least one ofthe color and intensity of light produced by the lighting units. Theprocessing facility 102 may also be capable of being supplied with atleast one of an identifier, such as a serial number or DMX address 5514and a bar code 5518 capable of being uniquely associated with thelighting unit 5510. The processor 102 can respond to external signalsthat provide illumination instructions according to the address of theprocessor, allowing illumination to be specified for the specificphysical location of the lighting system 5500.

The cover 5504 may be a substantially light-transmissive, opticallyoperative cover, wherein light from the plurality of light sources104A–104D is mixed to a degree greater than for a transparent cover,such as the one disclosed in connection with FIG. 54. In systems thathave transparent coverings, the user views the light sources 104A–104Ddirectly. In such embodiments, that may lead to undesirable colormixing, making it difficult to see certain effects. Also direct viewembodiments are limited by the inherent beam angle of the lightingunits, e.g. LEDs, so that a viewer from outside that angle does not seecolor at all. For example, if it is desired to illuminate outward awayfrom a wall, it may also be desirable to illuminate the wall, but asystem with a single line of LEDs disposed outward does not illuminatein both directions at the same time. The optically operative cover 5504diffuses the light from the light sources 104A–104D, so that it travelsin directions both inside and outside the beam angle of the line oflight sources 104A–104D. Thus, the cover diffuses light and causes asmooth color mixing, including allowing effects that are muddled indirect view applications. Also, the cover 5504 diffuses light backward,allowing illumination of the surface on which the lighting system 5500is mounted, as well as outward in the direction of the viewer. Thus, theoptically operative cover offers substantial advantages for certainapplications. A variety of semi-opaque or semi-transmissive materialsmay used for the cover 5504, such as plastic, crystal, various polymers,or the like. Materials that diffuse, diffract, reflect, refract, orotherwise redirect light may serve the purpose of having an optic thatincreases the beam angle of the light emitted from the lighting units toproduce a substantially uniform light intensity over an angle greaterthan the beam angle of the light sources 104A–104D themselves.

In an embodiment, the optically operative cover 5504 has end portions5508. The ends 5508 are themselves substantially light-transmissive, sothat the ends 5508 can also mix the light from the light sources104A–104D, similar to the cover 5504. The ends 5508 may be adapted topermit the lighting system 5500 to be positioned in direct contact withanother similar lighting system 5500. A connector 5520 may be suppliedas well, capable of putting the lighting system 5500 in at least one ofelectrical and data communication with another lighting system 5500. Theconnector 5520 may be disposed in a configuration capable of supplying adirect data and electrical connection to a second similar lightingsystem 5500 without requiring a separate junction device, such as thejunction box 5420 of FIG. 54. An advantage to the direct connector 5520(without a junction box) in combination with the optically transmissiveend portions 5508, is that the lighting systems 5500 can be placedend-to-end with other lighting systems 5500, without leaving any gaps,such as those that can appear where there are non-transmissive portionsof housing, or where there needs to be room for a junction box. Gaps canproduce undesirable optical properties, such as missing portions in aletter, number, or other image to be created by the lighting systems5500. Eliminating the junction boxes also avoids very time-consuminginstallation problems, such as the need to put a separate box in thewall at each terminal between lighting system portions. The junctionboxes also can force a gap between ends, interrupting the area ofillumination in an undesirable way.

The connector 5520 may include a plurality of wires 5522. The wires 5522may include, for example, wires for data, power and ground, which may betapped in parallel fashion by each of the lighting systems 5500. In agiven section of a lighting system 5500, there may be multipleaddressable processors 102 and multiple addressable light sources104A–104D. The wires 5522 may loop (inside the connector 5520) fromlighting system 5500 to lighting system 5500, in a daisy-chainconfiguration, allowing a single central controller to control, via thedata wire, a large number of lighting systems 5500, delivering eachprocessor 102 instructions that are specified for its particular address(which is associated with the physical or geometric location of thatprocessor 102 by one of various methods disclosed above). In anembodiment, the connector cable 5520 may be, for example, an Essex Royal12/3 Type SJOOW (−40C) 300V cable.

Referring to FIG. 56, the elimination of a need for a junction box bythe provision of a connector 5520 means that rather than connecting eachlighting system 5500 to a junction box in a wall, the lighting system5500 can be disposed on a wall or other surface via a mounting system5600. The mounting system 5600 may include a bracket 5602. The bracket5602 may have a plurality of holes therethrough for mounting themounting system 5600 on a substantially planar surface, such as withscrews, toggle bolts, or similar fasteners. The bracket 5602, in anembodiment, may include a metal portion 5604 made of a metal such asaluminum and a non-metal portion made, for example, of rubber 5608. Therubber 5608 prevents the metal portion from contacting a metal wall orother surface, thereby avoiding electrical connection between the metalportions, which can promote oxidation.

The mounting system 5600 may also included a fastener 5610, such as aclamp. The clamp may have two jaws, or claws 5612, which in embodimentsmay be provided with rubber or other non-metal material, as well asmetal portions, with the non-metal portions preventing oxidation whenthe claws 5612 come in contact with each other. The jaws 5612 may openand receive the lighting system 5500, allowing the user to convenientlysnap in the lighting system 5500, then tighten the screw 5614 forpermanent installation. The non-metal portions may also cushion theclamp for holding a lighting system 5500. The fastener 5610 may alsoinclude a screw 5614 for tightening the fastener 5600. In embodiments,the fastener 5610 may be movably, such as rotatably, disposed on themounting system 5600, so that the bracket 5602 may be disposed at anyangle relative to the fastener 5610, thus allowing the installer toangle a lighting system 5500 that is disposed on the mounting system5600 at any desired angle, such as an angle that exposes holes 5618 forconvenient attachment of the mounting system 5600 to a surface, or at anangle that hides the bracket 5604 from the viewer, by locating it behindthe lighting system 5500.

FIG. 57 provides a top view 5700 of a bracket 5602 with holes 5618.

FIG. 58 provides a view of a lighting system 5500 disposed in aplurality of mounting systems 5600 on a planar surface. With themounting systems 5600, a plurality of lighting systems 5500 can bedisposed in any configuration on a surface, thus providing any geometricpattern of lighting systems 5500, such as any pattern one could producewith neon or similar lights. However, with the lighting units 100 andthe processor 102, each lighting unit 100 can be controlled to producespecific illumination effects, with any color, intensity or temporaleffect desired by the user. By controlling multiple such lightingsystems 5500 together, an entire wall can be illuminated as desired bythe user with whatever effects the user desires.

FIG. 59 illustrates a lighting system 5900 according to the principlesof the present invention. The lighting system 5900 may include an optic5904 along with an internally mounted circuit board 5902 and lightsources 104A–104D, such as LED(s). In an embodiment, the optic 5904 maybe an extruded polycarbonate optic that is formed to enclose theinternal components. The extruded optic 5904 may have open ends that maybe capped to form a fully encapsulating optic. In an embodiment, such afully enclosed optic may house a lighting unit 100 or other illuminationsystem such that the optic 5904 is lit by the illumination system. Forexample, LEDs 104A–104D may be mounted on circuit board 5902 andadditionally the system may also include a microprocessor 102 forcontrolling the light sources 104A–104D.

Referring again to the embodiment in FIG. 59, the light sources104A–104D may be arranged to optimize the light distribution on theoptic 5904 to create the appearance of an evenly lit optic 5904. Forexample, a light sources 104A may be arranged such that a significantportion of the light emitted from the light source 104A hits a curvedportion of the optic 5904. The beam angle from the light source 104A(i.e. projected angle of the light emitted from the light source 104A)may be adapted to project a significant portion of the light hits acurved surface to optimize the uniformity of the lighting of the optic5904. In an embodiment, the light sources 104A–104D may be arranged inrows. The system may include, for example, a row of LEDs 104A–104Drunning through a length of the optic 5904 and another row of LEDs104E–104F running the length of the optic 5904. The two rows of LEDs104A–D and 104E–F may substantially parallel each other down an axis ofthe optic 5904. This arrangement may be useful in increasing the widthof an evenly illuminated optic by effectively increasing the beam angleof the light projected by the LEDs. In another embodiment, there may bemore than two rows of LEDs and in another embodiment, there may be onlyone row of LEDs, depending on the desired effect. In an embodiment, thelight sources 104A–D may be mounted on a platform 5902 (e.g. a circuitboard).

Another aspect of the present invention is a manufacturing method forassembling systems. FIG. 60 illustrates an embodiment of such a system.The assembly of a circuit board to power, data or other system tends tobe a difficult task. In an embodiment, a lighting system may comprise aplurality of circuit boards that tap into power and or data lines. Forexample, a plurality of circuit boards 6000, populated with LEDs and aprocessor may be adapted to tap into a data line, for instructions, andpower lines, to power each of the assemblies. The plurality of circuitboards may be arranged in an optic (not shown) (e.g. the optic may beeight feet long and it may include eight one foot addressable sectionswherein each section includes LEDs and a processor). In an embodiment,the platform 6006 (e.g. circuit board) may have an attachment portion(e.g. holes 6010). The circuit board may also have conductive traces6008 near the attachment portion. The assembly may also have anattachment device 6002. The attachment device 6002 may have aninsulation displacement portion 6012 designed to pierce the insulationof a wire 6003 and provide electrical contact between the attachmentdevice 6002 and a conductive layer of the wire 6003. The attachmentdevice 6002 may also have an attachment end 6014 and this end 6014 maybe passed through one of the holes 6010. Once passed through the hole6014 an electrically conductive material may be used to mechanically andelectrically associate the attachment device 6002 to the circuit board(e.g. solder may be used to connect an electrically conductiveattachment device 6002 to the conductive trace 6008 and the solder mayalso be used to mechanically hold the device 6002 to the board 6006).

FIG. 61 illustrates another system 6100 according to the principles ofthe present invention. The illustrated system 6100 also relates toattaching a platform to data and or power. For example, a circuit board6104 may be attached to an electrical conductor and or mechanical system6108 through a connection device 6102. For example, an electricalconductor 6108 may be formed of an electrically conductive material(e.g. copper) and formed with spring tension such that it opens as theconnection device 6102 is inserted and applies closing pressure on thedevice 6102 such that it provides both electrical contact and mechanicalhold.

Another aspect of the present invention relates to a lighting assemblytechnique. FIG. 62 illustrates a lighting assembly 6200 according to theprinciples of the present invention. The lighting assembly 6200 includesan optic 5904, similar to optics in the other described embodiments,along with an end cap 6202. The end cap 6202 may be adapted to slip overthe optic 5904 in an overlap region 6204. The overlap area may seal theoptic 5904 to the end cap 6202 with adhesive or other sealing techniqueor it may simply form a slip fit. The end cap 6202 may also betransparent or translucent to allow light to pass through the end cap6202. This may be useful in providing an elongated optic that transmitlight to and possibly from the end. The end cap 6202 may also includetabs 6208. The tabs 6208 may be arranged to capture an light source 104(e.g. a circuit board populated with LEDs). This arrangement may beuseful in capturing a circuit board (not shown in this illustration) atthe ends while allowing the middle portion (i.e. a portion in the optic5904) to remain relatively unconstrained.

FIG. 63 illustrates an end view of an end cap 6202 according to theprinciples of the present invention. The end of the end cap 6202 mayinclude a gas exchange portion 6302. The gas exchange portion 6302 maybe used to pass gas into or out of a sealed optic 5904 for example. Inan embodiment, a method of cleaning or drying the atmosphere of alighting assembly may include providing an optic 5904 with a sealed endcap 6202 on either end of the optic. Each end cap 6202 may include a gasexchange portion 6302 where one is used to pass a dry gas (e.g.nitrogen) into the system while the other is used to pull gas from thetube. After a period of purging the system, the vacuum end may be sealedfollowed by sealing the gas filling end. This may be useful in providinga lighting assembly with a dry internal atmosphere to preventcondensation or other ill effects caused by higher levels of watercontent.

FIG. 64 illustrates a cross sectional view of a lighting assembly 6400.The lighting assembly 6400 may include an optic 5904 wherein the opticis made of a translucent material (e.g. polycarbonate). The lightingassembly 6400 may also include a ridged frame 6402 (e.g. aluminum). Theridged frame 6402 may be adapted to capture the lower lobe of the optic5904 to provide overall system rigidity. In an embodiment, a clampingmechanism (e.g. a clamp as illustrated in FIG. 56) may be adapted tohold the ridged frame 6402. The ridged frame 6402 or the optic 5904 maybe further adapted with a pass through section 6404. The pass throughsection 6404 may be adapted to pass liquid (e.g. water) or gas such thatit does not get trapped between the ridged frame 6402 and the optic5904. The ridged frame 6402 may also be adapted to allow for thermalexpansion of the different materials. In an embodiment, the ridged frame6402 may be adapted to include a securing fastener 6408. The securingfastener 6408 may be attached with other fasteners 6410 (e.g. screws)into holes or channels 6412. The securing fastener may be used toprovide a safety feature such as an additional method of securing thelighting assembly to a surface (e.g. building). For example, thelighting assembly may be fastened to a building's exterior surface witha clamping mechanism (e.g. a clamp as illustrated in FIG. 56) and asafety cable may also be used to connect the lighting assembly to a wallin case the primary connection (e.g. the clamp) fails.

FIG. 65 illustrates a lighting assembly 6500 according to the principlesof the present invention. The lighting assembly 6500 may include anoptic 5904 along with a ridged frame 6402. As illustrated, the ridgedframe 6402 may not extend to the end of the optic 5904. Thisconstruction may be adapted to allow the sealing of an end cap 6202 onthe end of the optic 5904 while also allowing the inclusion of anexpansion component 6502. The expansion component 6505 may be formed ofrubber with a relatively soft material for example. In an embodiment,the expansion component 6502 may be used to constrain the movement ofthe ridged frame 6402 (i.e. from traveling on the optic 5904). Whileconstraining the ridged frame, the expansion component 6502 may be softenough to accommodate the thermal expansion mismatch between the ridgedframe material and the optic material such that the end cap does notreceive significant stress as the lighting assembly is exposed tothermal cycles.

Another embodiment of the present invention relates to the electricalsystem 6600 of a lighting assembly. Many lighting assemblies may beassociated through a common electrical system. The electrical system mayinclude data and or power transmission systems. For example, theelectrical system of FIG. 66 includes both power and data on athree-wire system. The electrical bus 6602 may include wires withgreater current carrying capacity than the electrical bus 6610 becausethe bus 6610 needs carry current for a more limited number of lightingassemblies (e.g. one) while the bus 6602 supplies current to many morelighting assemblies. The buses may be broken up into three segments,6610A, B, and C and 6602A, B, and C and the two busses may beelectrically associated such that the electrical path of a respectivelettered wire passes to the like identified wire of the other bus. Theelectrical system 6600 may be passed into a lighting assembly enclosure6612. The wires may be passed into the enclosure 6612 and clamped usinga clamp or other fastener 6608. This clamping device 6608 may be used toprovide strain relief such that the outer assembly being pulled does notstrain the wires. The enclosure 6612 may also be filled with a fillingmaterial 6604 (e.g. epoxy or resin) to waterproof the assembly.

FIG. 67 depicts an array 6700 of linear lighting units 404 that can beprogrammed to display different colors and intensities of light alongvarying timelines in accordance with the principles of the invention.The array 6700 consists of linear lighting units 404 disposed so thateffects can travel through the array 6700 by propagating a given colorand intensity along different elements, such as downward and to theright in FIG. 67. The individual control of various linear lightingunits 404, using control, addressing and authoring techniques describedabove, allow creation of shows, such as color chasing shows, rainbows,solid color patterns, color fades, motion effects, explosion effects,graphics, logos, letters, numbers, symbols, and the like.

FIG. 68 shows a plurality of linear lighting units 404 disposed alongthe exterior of a building 6800. The linear lighting units 404 couldoutline the building, such as along all of the corners, around windows,around doors, along a roofline, or the like. Of course, the units neednot be straight lines, but could include other shapes that highlightfeatures of the architecture of the building. With power factor control,it is possible to provide very long lines of linear lighting units 404with a small number of power supplies, making such arrangementspractical. Effects can display on large portions of the exterior of anybuilding 6800, such as an office building, bank, house, school,government building, bridge, or other structure. Many effects can beprovided, including moving lights, symbols, and the like.

FIG. 69 shows a building 6800 with an array 6900 of linear lightingunits 404 covering most of the exterior of the building 6800. The linearlighting units 404 are sufficiently numerous to allow a wide range ofdisplays and effects. For example, the lighting units 404 can be viewed,at a distance, as moving elements in a show, similar to pixels. However,in contrast to a video display, the elements can be distributed in anygeometry, such as wrapping around the building 6800, and the pixels canbe programmed by an authoring technique such as described above. Inembodiments, a computer game, such as Pong, can be authored to be playedon the array 6900, with the elements being controlled on a computerscreen, and the lights of the array 6900 reflecting the objects in thegame.

FIG. 70 shows the array 6900 with certain linear lighting elements 404lit to show letters of a word. Any range of letters, numbers, symbols,logos, brands, pictures, or the like can be shown by lightingappropriate linear lighting units 404 in the array 6900. Thus, the array6900 can form a sign to deliver information or show a brand for anysignage purpose.

FIG. 71 shows an array 6900 on a building 6800, where the array consistsof a mixture of linear lighting units 404 and lighting units 100 ofother configurations, such as circular lighting units 402. A mixture oflighting units 6900 can be lit with varying “on” and “off” states,colors, and intensities, to produce a wide range of different shows andeffects.

FIG. 72 shows a stairway 7200 leading up to a deck 7202. Linear lightingunits 404 light the rails of the stairway 7200 and deck 7202. Differentlighting units 404 can show different colors and intensities, producingunique deck lighting. Similar configurations can be provided to outlineor display not only decks and stairways, but other architecturalfeatures, such as doors, windows, rooflines, gazebos, jungle gyms, swingsets, slides, tree houses, club houses, garages, sheds, pools, spas,furniture, umbrellas, counters, cabinets, ponds, walkways, trees,fences, light poles, statues, vehicles, automobiles, boats, masts,sails, airplanes, wings, fountains, waterfalls, and other objects andfeatures.

FIG. 73 shows a house 7300 with various features highlighted with linearlighting units 404, each of which can display different colors andintensities over any time line to produce striking effects. The linearlighting units 404 outline a window 7302, door 7304, walkway 7308,garage 7310, driveway 7312 and roofline 7314. Any other features of abuilding, whether a home, commercial building, or other structure, canbe highlighted with a configuration of linear lighting units 404 orlighting units of other shapes, such as circular 402, curvilinear 408,branched 410 or bent 412 lighting units.

FIG. 74 shows a lighting configuration 7400 suitable for a substantiallycylindrical object, such as an above ground pool, spa, tub, trampoline,or circular room or building. The configuration 7400 includes curvedlighting units 408 and vertical linear lighting units 404, each of whichcan be addressed, controlled and authored to produce varying lightingeffects as described herein.

FIG. 75 shows a configuration 7500 with ceiling lights 7502 and walllights 7504, including linear lighting units 404 and point sourcelighting units 402. Any mix of units could be supplied, to produce awide range of effects in an architectural space, such as a hallway,corridor, airport terminal, tunnel, cylindrical tunnel, water slidetunnel, cave, entryway, vestibule, walkway, subway station, or similarenvironment.

FIG. 76 shows a configuration 7600 with a dome 7602 consisting of curvedlighting units 408 and linear lighting units 404. The dome could be adome for a building, gazebo, architectural feature or the like.

FIG. 77 shows a configuration 7700 of a boat 7702 with linear lightingunits 404 highlighting the mast 7704, hull 7708 and sail 7710 of asailboat. Similar configurations could be used for other forms of boats,such as motor boats, pontoon boats, and the like, as well as othervehicles, such as planes, automobiles, buses, ships and the like.

Again, in all of the embodiments above, individual lighting units 100 ofall shapes and sizes can be addressed, authored and controlled in theways described above, including playing scripted programs, responding tosensors, serving as objects in a game or other computer program,responding to music or video inputs, or responding to direct user input,such as a user interface. Linear lighting units 404 and curvilinearlighting units 408 allow the creation of large, elaborate arrays andconfigurations that allow for lighting displays that highlightarchitectural features, provide information, and produce entertainingeffects.

While the invention has been disclosed in connection with theembodiments shown and described above, various equivalents,modifications and improvements will be apparent to one of ordinary skillin the art and are encompassed herein.

APPENDIX A DirectLight API

A Programming Interface for Controlling Color Kinetics Full SpectrumLighting

Important Stuff You Should Read First.

-   1) The sample program and Real Light Setup won't run until you    register the DirectLight.dll COM object with Windows on your    computer. Two small programs cleverly named “Register    DirectLight.exe” and “Unregister DirectLight.exe” have been included    with this install.-   2) DirectLight assumes that you have a SmartJack hooked up to COM1.    You can change this assumption by editing the DMX_INTERFACE_NUM    value in the file “my_lights.h.”    About DirectLight    Organization

An application (for example, a 3D rendered game) can create virtuallights within its 3D world. DirectLight can map these lights ontoreal-world Color Kinetics full spectrum digital lights with color andbrightness settings corresponding to the location and color of thevirtual lights within the game.

In DirectLights three general types of virtual lights exist:

-   Dynamic light. The most common form of virtual light has a position    and a color value. This light can be moved and it's color changed as    often as necessary. Dynamic lights could represent glowing space    nebulae, rocket flares, a yellow spotlight flying past a corporate    logo, or the bright red eyes of a ravenous mutant ice-weasel.-   Ambient light is stationary and has only color value. The sun, an    overhead room light, or a general color wash are examples of    ambient. Although you can have as many dynamic and indicator lights    as you want, you can only have one ambient light source (which    amounts to an ambient color value).-   Indicator lights can only be assigned to specific real-world lights.    While dynamic lights can change position and henceforth will affect    different real-world lights, and ambient lights are a constant color    which can effect any or all real-world lights, indicator lights will    always only effect a single real-world light. Indicators are    intended to give feedback to the user separate from lighting, e.g.    shield status, threat location, etc.

All these lights allow their color to be changed as often as necessary.

In general, the user will set up the real-world lights. The“my_lights.h” configuration file is created in, and can be edited by,the “DirectLight GUI Setup” program. The API loads the settings from the“my_lights.h” file, which contains all information on where thereal-world lights are, what type they are, and which sort of virtuallights (dynamic, ambient, indicator, or some combination) are going toaffect them.

Virtual lights can be created and static, or created at run timedynamically. DirectLights runs in it's own thread; constantly poking newvalues into the lights to make sure they don't fall asleep. Afterupdating your virtual lights you send them to the real-world lights witha single function call. DirectLights handles all the mapping fromvirtual world to real world.

If your application already uses 3D light sources, implementingDirectLight can be very easy, as your light sources can be mapped 1:1onto the Virtual_Light class.

A typical setup for action games has one overhead light set to primarilyambient, lights to the back, side and around the monitor set primarilyto dynamic, and perhaps some small lights near the screen set toindicators.

The ambient light creates a mood and atmosphere. The dynamic lightsaround the player give feedback on things happening around him: weapons,environment objects, explosions, etc. The indicator lights give instantfeedback on game parameters: shield level, danger, detection, etc.

Effects (LightingFX) can be attached to lights which override or enhancethe dynamic lighting. In Star Trek: Armada, for example, hitting RedAlert causes every light in the room to pulse red, replacing temporarilyany other color information the lights have.

Other effects can augment. Explosion effects, for example, can beattached to a single virtual light and will play out over time, sorather than have to continuously tweak values to make the fireball fade,virtual lights can be created, an effect attached and started, and thelight can be left alone until the effect is done.

Real lights have a coordinate system based on the room they areinstalled in. Using a person sitting at a computer monitor as areference, their head should be considered the origin. X increases totheir right. Y increases towards the ceiling. Z increases towards themonitor.

Virtual lights are free to use any coordinate system at all. There areseveral different modes to map virtual lights onto real lights. Havingthe virtual light coordinate system axis-aligned with the real lightcoordinate system can make your life much easier.

Light positions can take on any real values. The DirectLight GUI setupprogram restricts the lights to within 1 meter of the center of theroom, but you can change the values by hand to your heart's content ifyou like. Read about the Projection Types first, though. Some modesrequire that the real world and virtual world coordinate systems havethe same scale.

Getting Started

Installing DirectLight SDK

Running the Setup.exe file will install:

In/Windows/System/three dll files, one for DirectLight, two forlow-level communications with the real-world lights via DMX.

-   -   DirectLight.dll    -   DMXIO.dll    -   DLPORTIO.dll

In the folder you installed DirectLight in: Visual C++ project files,source code and header files:

DirectLight.dsp DirectLight.dsw etc. DirectLight.h DirectLight.cppReal_Light.h Real_Light.cpp Virtual_Light.h Virtual_Light.cpp etc.

compile time libraries:

FX_Library.lib C01104.70118.US 679094.1     DirectLight.lib     DMXIO.liband configuration files:

my_lights.h light_definitions.h GUI_config_file.hDynamic_Localized_Strings.h

The “my_lights.h” file is referenced both by DirectLight and DirectLightGUI Setup.exe. “my_lights.h” in turn references “light_definitions.h”The other files are referenced only by DirectLight GUI Setup. Both theDLL and the Setup program use a registry entry to find these files:

HKEY_LOCAL_MACHINE\Software\ColorKinetics\ DirectLight\1.00.000\location

Also included in this directory is this documentation, and subfolders:

FX_Libraries contain lighting effects which can be accessed byDirectLights. Real Light Setup contains a graphical editor for changinginfo about the real lights. Sample Program contains a copiouslycommented program demonstrating how to use DirectLight.DirectLight COM

The DirectLight DLL implements a COM object which encapsulates theDirectLight functionality. The DirectLight object possesses theDirectLight interface, which is used by the client program.

In order to use the DirectLight COM object, the machine on which youwill use the object must have the DirectLight COM server registered (seeabove: Important Stuff You Should Read First). If you have not donethis, the Microsoft COM runtime library will not know where to find yourCOM server (essentially, it needs the path of DirectLight.dll).

To access the DirectLight COM object from a program (we'll call it aclient), you must first include “directlight.h”, which contains thedefinition of the DirectLight COM interface (among other things) and“directlight_i.c”, which contains the definitions of the various UIDs ofthe objects and interfaces (more on this later).

Before you can use any COM services, you must first initialize the COMruntime. To do this, call the ColInitialize function with a NULLparameter:

CoInitialize (NULL);

For our purposes, you don't need to concern yourself with the returnvalue.

Next, you must instantiate a DirectLight object. To do this, you need tocall the CoCreateInstance function. This will create an instance of aDirectLight object, and will provide a pointer to the DirectLightinterface:

HRESULT hCOMError = CoCreateInstance( CLSID_CDirectLight, NULL,CLSCTX_ALL , IID_IDirectLight, (void **) &pDirectLight);

CLSID_CDirectLight is the identifier (declared in directlight_i.c) ofthe DirectLight object, ID_IDirectLight is the identifier of theDirectLight interface, and pDirectLight is a pointer to theimplementation of the DirectLight interface on the object we justinstantiated. The pDirectLight pointer will be used by the rest of theclient to access the DirectLights functionality.

Any error returned by CoCreateInstance will most likely beREGDB_E_CLASSNOTREG, which indicates that the class isn't registered onyour machine. If that's the case, ensure that you ran the RegisterDirectLight program, and try again.

When you're cleaning up your app, you should include the following threelines:

// kill the COM object pDirectLight->Release( ) ; // We ask COM tounload any unused COM Servers. CoFreeUnusedLibraries ( ) ; // We'reexiting this app so shut down the COM Library. CoUninitialize ( ) ;

You absolutely must release the COM interface when you are done usingit. Failure to do so will result in the object remaining in memory afterthe termination of your app.

CoFreeUnusedLibraries( ) will ask COM to remove our DirectLight factory(a server that created the COM object when we called CoCreatelnstance()) from memory, and CoUninitialize( ) will shut down the COM library.

DirectLight Class

The DirectLight class contains the core functionality of the API. Itcontains functionality for setting ambient light values, globalbrightness of all the lights (gamma), and adding and removing virtuallights.

Types:

enum Projection_Type{      SCALE_BY_VIRTUAL_DISTANCE_TO_CAMERA_(—)     ONLY = 0,      SCALE_BY_DISTANCE_AND_ANGLE = 1,     SCALE_BY_DISTANCE_VIRTUAL_TO_REAL = 2 };

For an explanation of these values, see “Projection Types” in DirectLight Class

enum Light_Type{        C_75 = 0,        COVE_6 = 1 };

For an explanation of these values, see “Light Types” in Direct LightClass, or look at the online help for “DirectLight GUI Setup.”

enum Curve_Type{        DIRECTLIGHT_LINEAR = 0,       DIRECTLIGHT_EXPONENTIAL = 1,        DIRECTLIGHT_LOGARITHMIC = 2};

These values represent different curves for lighting effects when fadingfrom one color to another.

Public Member Functions:

void Set_Ambient_Light( int R, int G, int B );The Set_Ambient_Light function sets the red, green and blue values ofthe ambient light to the values passed into the function. These valuesare in the range 0-MAX_LIGHT_BRIGHTNESS. The Ambient light is designedto represent constant or “Room Lights” in the application. Ambient Lightcan be sent to any or all real of the real-world lights. Each real worldlight can include any percentage of the ambient light.

void Stir_Lights( void *user_data );Stir_Lights sends light information to the real world lights based onthe light buffer created within DirectLights. The DirectLight DLLhandles stirring the lights for you. This function is normally notcalled by the application

Virtual_Light * Submit_Virtual_Light( float xpos, float ypos, floatzpos, int red, int green, int blue );Submit_Virtual_Light creates a Virtual_Light instance. Its virtualposition is specified by the first three values passed in, it's color bythe second three. The position should use application space coordinates.The values for the color are in the range 0-MAX_LIGHT_BRIGHTNESS. Thisfunction returns a pointer to the light created.

void Remove_Virtual_Light( Virtual_Light * bad_light );Given a pointer to a Virtual_Light instance, Remove_Virtual_Light willdelete the virtual light.

void Set_Gamma( float gamma );The Set_Gamma function sets the gamma value of the Direct Light datastructure. This value can be used to control the overall value of allthe lights, as every virtual light is multiplied by the gamma valuebefore it is projected onto the real lights.

void Set_Cutoff_Range( float cutoff_range );Set_Cutoff_Range sets the cutoff distance from the camera. Beyond thisdistance virtual lights will have no effect on real-world lights. Setthe value high to allow virtual lights to affect real world lights froma long way away. If the value is small virtual lights must be close tothe camera to have any effect. The value should be in application spacecoordinates.

  void Clear_All_Real_Lights( void ); Clear_All_Lights destroys all reallights.   void Project_All_Lights( void );Project_All_Lights calculates the effect of every virtual on everyreal-world light, taking into account gamma, ambient and dynamiccontributions, position and projection mode, cutoff angle and cutoffrange, and sends the values to every real-world light.

void Set Indicator Color( int which indicator,         int red,          int green,          int blue );Indicators can be assigned to any of the real world lights via theconfiguration file( my_lights.h). Each indicator must have a uniquenon-negative integer ID. Set_Indicator_Color changes the color of theindicator designated by which_indicator to the red, green, and bluevalues specified. If Set_Indicator_Color is called with an indicator idwhich does not exist, nothing will happen. The user specifies whichlights should be indicators, but note that lights that are indicatorscan still be effected by the ambient and dynamic lights.

Indicator Get Indicator( int which indicator );Returns a pointer to the indicator with the specified value.

int Get_Real_Light_Count( void );Returns the number of real lights.

void Get_My_Lights_Location( char buffer[MAX_PATH] );Looks in the directory and finds the path to the “my_lights.h” file.

void Load_Real_Light_Configuration( char * fullpath = NULL );Loads the “my_lights.h” file from the default location determined by theregistry. DirectLight will create a list of real lights based on theinformation in the file.

void Submit_Real_Light( char * indentifier, int DMX_port,Projection_Type projection_type, int indicator_number, floatadd_ambient, float add_dynamic, float gamma, float cutoff_angle, floatx, float y, float z );Creates a new real light in the real world. Typically DirectLight willload the real light information from the “my_lights.h” file at startup.

void Remove_Real_Light( Real_Light * dead_light );Safely deletes an instance of a real light.

Light GetAmbientLight ( void );Returns a pointer to the ambient light.

bool RealLightListEmpty ( void );Returns true if the list of real lights is empty, false otherwise.Light Class

Ambient lights are defined as lights. Light class is the parent classfor Virtual Lights and Real_Lights. Member variables:

static const int MAX_LIGHT_BRIGHTNESS. Defined as 255LightingFX_List * m_FX_currently attached. A list of the effectscurrently attached to this light.ColorRGB m_color. Every light must have a color! ColorRGB is defined inColorRGB.h

void Attach_FX( LightingFX * new_FX )Attach a new lighting effect to this virtual light.

void Detach_FX( LightingFX * old_FX )Detach an old lighting effect from this virtual light.Real Lights

Real_Light inherits from the Light class. Real lights represent lightsin the real world. Member variables:

static const int NOT_AN_INDICATOR_LIGHT defined as −1.char m_identifier[100] is the name of the light (like “overhead” or“covelight1”). Unused by DirectLight except as a debugging tool.

int DMX_port is a unique non-negative integer representing the channelthe given light will receive information on. DMX information is sent outin a buffer with 3 bytes (red, green and blue) for each light.(DMX_port * 3) is actually the index of the red value for the specifiedlight. DirectLight DMX buffers are 512 bytes, so DirectLight can supportapproximately 170 lights. Large buffers can cause performance problems,so if possible avoid using large DMX_port numbers.

Light_Type m_type describes the different models of Color Kineticslights. Currently unused except by DirectLight GUI Setup to displayicons.

float m_add_ambient the amount of ambient light contribution to thislights color. Range 0–1

float m_add_dynamic the amount of dynamic light contribution to thislights color. Range 0–1

float m_gamma is the overall brightness of this light. Range 0–1.

float m_cutoff_angle determines how sensitive the light is to thecontributions of the virtual lights around it. Large values cause it toreceive information from most virtual lights. Smaller values cause it toreceive contributions only from virtual lights in the same arc as thereal light.

Projection_Type m_projection_type defines how the virtual lights maponto the real lights.

 SCALE_BY_VIRTUAL_DISTANCE_TO_CAMERA_ONLY this real light will receivecontributions   from virtual lights based soley on the distance from theorigin of the virtual coordinate system to   the position of the virtuallight. The virtual light contribution fades linearly as the distancefrom   the origin approaches the cutoff range. SCALE_BY_DISTANCE_AND_ANGLE this real light will receive contributionsfrom virtual lights   based on the distance as computed above AND thedifference in angle between the real light and   the virtual light. Thevirtual light contribution fades linearly as the distance from theorigin   approaches the cutoff range and the angle approaches the cutoffangle.  SCALE_BY_DISTANCE_VIRTUAL_TO_REAL this real light will receivecontributions from virtual   lights based on the distance in 3-spacefrom real light to virtual light. This mode assumes that the   real andvirtual coordinate systems are identical. The virtual light contributionfades linearly as   the distance from real to virtual approaches thecutoff range. float m_xpos x,y,z position in virtual space. float m_yposfloat m_zpos

int m_indicator_number. if indicator is negative the light is not anindicator. If it is non-negative it will only receive colors sent tothat indicator number.

Virtual Lights

Virtual Lights represent light sources within a game or other real timeapplication that are mapped onto real-world Color Kinetics lights.Virtual Lights may be created, moved, destroyed, and have their colorchanged as often as is feasible within the application.

-   -   static const int MAX_LIGHT_BRIGHTNESS;

MAX_LIGHT_BRIGHTNESS is a constant representing the largest value alight can have. In the case of most Color Kinetics lights this value is255. Lights are assumed to have a range that starts at 0

void Set_Color( int R, int G, int B );The Set_Color function sets the red, green and blue color values of thevirtual light to the values passed into the function.

void Set_Position(    float x_pos, float y_pos, float z_pos  );The Set_Position function sets the position values of the virtual lightto the values passed into the function. The position should useapplication space coordinates.

void Get_Position(    float *x_pos, float *y_pos, float *z_pos  );Gets the position of the light.Lighting FX

Lighting FX are time-based effects which can be attached to real orvirtual lights, or indicators, or even the ambient light. Lightingeffects can have other effects as children, in which case the childrenare played sequentially.

static const int FX_OFF;   Defined as −1. static const int START_TIME;Times to start and stop the effect. This is a virtual value. The staticconst int STOP_TIME; individual effects will scale their time of playbased on the total.   void Set_Real_Time(  bool Real_Time  );If TRUE is passed in, this effect will use real world time and updateitself as often as Stir_Lights is called. If FALSE is passed in theeffect will use application time, and update every time Apply-FX iscalled.

void Set_Time_Extrapolation (  bool extrapolate );If TRUE is passed in, this effect will extrapolate it's value whenStir_Lights is called.

void Attach_FX_To_Light (  Light * the_light );Attach this effect to the light passed in.

void Detach_FX_From_Light ( Light * the_light, bool remove_FX_from_light= true );Remove this effect's contribution to the light. If remove_FX_from_lightis true, the effect is also detached from the light.

The above functions also exist as versions to effect Virtual lights,Indicator lights (referenced either by a pointer to the indicator orit's number), Ambient light, and all Real_Lights.

void Start (    float FX_play_time, bool looping = false );Start the effect. If looping is true the effect will start again afterit ends.

void Stop (    void );Stop the effect without destroying it.

void Time_Is_Up (    void );Either loop or stop playing the effect, since time it up for it.

void Update_Time (    float time_passed );Change how much game time has gone by for this effect.

void Update_Real_Time (    void );Find out how much real time has passed for this effect.

void Update_Extrapolated_Time (    void );Change the FX time based on extrapolating how much application time perreal time we have had so far.

virtual void Apply_FX (    ColorRGB &base_color  );This is the principle lighting function. When Lighting_FX is inherited,this function does all the important work of actually changing thelight's color values over time. Note that you can choose to add yourvalue to the existing light value, replace the existing value with yourvalue, or any combination of the two. This way Lighting effects canoverride the existing lights or simply supplant them.

static void Update_All_FX_Time (   float time_passed );Update the time of all the effects.

void Apply_FX_To_All_Virtual_Lights (   void  );Apply this effect to all virtual, ambient and indicator lights that areappropriate.

void Apply_All_FX_To_All_Virtual_Lights (   void  );Apply each effect to all virtual, ambient and indicator lights that areappropriate.

void Apply_All_FX_To _Real_Light (    Real_Light * the_real_light );Apply this effect to a single real light.

void Start_Next_ChildFX (   void  );If this effect has child effect, start the next one.

void Add_ChildFX (    LightingFX * the_child, float timeshare  );Add a new child effect onto the end of the list of child effects thatthis effect has. Timeshare is this child's share of the total time theeffect will play. The timeshares don't have to add up to one, as thetotal shares are scaled to match the total real play time of the effect

void Become_Child_Of (    Lighting_FX * the_parent   );Become a parent of the specified effect.

void Inherit_Light_List (   Affected_Lights * our_lights   );Have this effect and all it's children inherit the list of lights toaffect.

Configuration File

The file “my_lights.h” contains information about real-world lights, andis loaded into the DirectLight system at startup. The files“my_lights.h” and “light_definitions.h” must be included in the samedirectory as the application using DirectLights.

“my_lights.h” is created and edited by the DirectLight GUI Setupprogram. For more information on how to use the program check the onlinehelp within the program.

Here is an example of a “my_lights.h” file:

//////////////////////////////////////////////////////////// // //my_lights.h // // Configuration file for Color Kinetics lights //   used by DirectLights // // This file created with DirectLights GUISetup v1.0 ////////////////////////////////////////////////////////////// // Load upthe basic structures #include “Light_Definitions.h” // overall gammafloat OVERALL_GAMMA = 1.0; // which DMX interface do we use? intDMX_INTERFACE_NUM = 0;//////////////////////////////////////////////////////////// // // Thisis a list of all the real lights in the world // Real_Light my_lights[MAX_LIGHTS] = { //NAME PORT TYPE PRJ IND AMB DYN GAMMA CUTOFF X Y Z“Overhead”,  0, 1, 0, −1, 1.000, 0.400, 1.000, 3.142,   0.000, −1.000,  0.000, “Left”,  1, 0, 1, −1, 0.000, 1.000, 1.000, 1.680, −1.000,  0.000,   0.000, “Right”,  2, 0, 1, −1, 0.000, 1.000, 0.800, 1.680,  1.000,   0.000,   0.000, “Back”,  3, 0, 1, −1, 0.000, 1.000, 1.000,1.680,   0.000,   0.000, −1.000, “LeftCove0”,  4, 0, 1,   0, 0.000,0.000, 1.000, 0.840, −0.500, −0.300,   0.500, “LeftCove1”,  5, 0, 1,  1, 0.000, 0.000, 1.000, 0.840, −0.500,   0.100,   0.500, “LeftCove2”, 6, 0, 1, −1, 0.000, 0.000, 1.000, 0.840, −0.500,   0.500,   0.500,“CenterCove0”,  7, 0, 1, −1, 0.000, 0.000, 1.000, 0.840, −0.400,  0.700,   0.500, “CenterCove1”,  8, 0, 1, −1, 0.000, 0.000, 1.000,0.840, −0.200,   0.700,   0.500, “CenterCove2”,  9, 0, 1, −1, 0.000,0.000, 1.000, 0.840,   0.200,   0.700,   0.500, “CenterCove3”, 10, 0, 1,−1, 0.000, 0.000, 1.000, 0.840,   0.400,   0.700,   0.500, “RightCove0”,11, 0, 1,   2, 0.000, 0.000, 1.000, 0.840,   0.500,   0.500,   0.500,“RightCove1”, 12, 0, 1, −1, 0.000, 0.000, 1.000, 0.840,   0.500,  0.100,   0.500, “RightCove2”, 13, 0, 1, −1, 0.000, 0.000, 1.000,0.840,   0.500, −0.300,   0.500, };

This example file is taken from our offices, where we had lights setuparound a computer, with the following lights (referenced from someonesitting at the monitor): One overhead (mostly ambient); one on each sideof our head (Left and Right); one behind our head; Three each along thetop, left and right side of the monitor in front of us.

Each line in the “my_lights” file represents one Real_Light. EachReal_Light instance represents, surprise surprise, one real-world light.

The lower lights on the left and right side of the monitor areindicators 0 and 2, the middle light on the left side of the monitor isindicator 1.

The positional values are in meters. Z is into/out of the plane of themonitor. X is vertical in the plane of the monitor, Y is horizontal inthe plane of the monitor.

MAX_LIGHTS can be as high as 170 for each DMX universe. Each DMXuniverse is usually a single physical connection to the computer (COM1,for example). The larger MAX_LIGHTS is, the slower the lights willrespond, as MAX_LIGHTS determines the size of the buffer sent to DMX(MAX_LIGHTS * 3) Obviously, larger buffers will take longer to send.

OVERALL_GAMMA can have a value of 0–1. This value is read intoDirectLights and can be changed during run-time.

1. A method of providing a lighting system including at least first andsecond units, comprising: providing a substantially linear circuit boardin each unit; disposing a plurality of light sources along the circuitboard; disposing the circuit board and the light sources in asubstantially linear housing of each unit; providing a lighttransmissive cover for the housing; providing a connection facility ofthe housing; and arranging the system such that the first unit of thelighting system is disposed end to end with the second unit of thelighting system without a gap in light emission between the housings;wherein the processor is an application specific integrated circuit(ASIC); wherein the ASIC is configured to receive and transmit a datastream; and wherein the ASIC responds to data addressed to it, modifiesat least one bit of the data stream, and transmits the modified datastream.
 2. A method of claim 1, wherein the light sources are LEDs.
 3. Amethod of claim 1, wherein the processor and the LEDs are on the samecircuit board.
 4. A method of claim 1, wherein the connection facilityis a hole that allows cables to exit the housing at a location otherthan the end of the housing.
 5. A method of providing a lighting systemincluding at least first and second units, comprising: providing asubstantially linear circuit board in each unit; disposing a pluralityof light sources along the circuit board; disposing the circuit boardand the light sources in a substantially linear housing of each unit;providing a light-transmissive cover for the housing; providing aconnection facility of the housing; arranging the system such that thefirst unit of the lighting system is disposed end to end with the secondunit of the lighting system without a gap in light emission between thehousings; and disposing a plurality of lighting systems in a serialconfiguration and controlling all of them by a stream of data torespective ASICs of each of them, wherein each lighting system respondsto the first unmodified bit of data in the stream, modifies that bit ofdata, and transmits the stream to the next ASIC.
 6. A method of claim 1,wherein the housing is configured to resemble at least one of afluorescent light and a neon light.
 7. A method of claim 1 wherein thehousing is curved.
 8. A method of claim 1, wherein the housing isconfigured in a bent configuration.
 9. A method of claim 1, wherein thehousing is configured in a branched configuration.
 10. A method of claim1, wherein the housing is configured in a T configuration.
 11. A methodof claim 1, further comprising providing a communication facility of thelighting system, wherein the lighting system responds to data from asource exterior to the lighting system.
 12. A method of claim 11,wherein the data is from a signal source exterior to the lightingsystem.
 13. A method of claim 12, wherein the signal source is awireless signal source.
 14. A method of claim 12, wherein the signalsource includes a sensor for sensing an environmental condition, and thecontrol of the lighting system is in response to the environmentalcondition.
 15. A method of claim 12, wherein the signal source generatesa signal based on a scripted lighting program for the lighting system.16. A method of claim 1, wherein the control of the lighting system isbased on assignment of lighting system units as objects in anobject-oriented computer program.
 17. A method of claim 16, wherein thecomputer is an authoring system.
 18. A method of claim 17, wherein theauthoring system relates attributes in a virtual system to real worldattributes of lighting systems.
 19. A method of claim 18, wherein thereal world attributes include positions of lighting units of thelighting system.
 20. A method of claim 17, wherein the computer programis a computer game.
 21. A method of claim 17, wherein the computerprogram is a music program.
 22. A method of claim 1, wherein thelighting system includes a power supply.
 23. A method of claim 22,wherein the power supply is a power-factor-controlled power supply. 24.A method of claim 22, wherein the power supply is a two-stage powersupply.
 25. A method of claim 24, wherein power factor correctionincludes an energy storage capacitor and a DC—DC converter.
 26. A methodof claim 25, wherein power factor correction includes energy storagecapacitor are separated from the DC—DC converter by a high voltage bus.27. A method of claim 1, further comprising disposing at least one suchlighting unit on a building.
 28. A method of claim 27, wherein thelighting units are disposed in an array on a building.
 29. A method ofclaim 28, wherein the array is configured to facilitate displaying atleast one of a number, a word, a letter, a logo, a brand, and a symbol.30. A method of claim 28, wherein the array is configured to display alight show with time-based effects.
 31. A method of claim 1, furthercomprising disposing a lighting unit on at least one of a vehicle, anautomobile, a boat, a mast, a sail, an airplane, a wing, a fountain, anda waterfall.
 32. A method of claim 1, further comprising disposing alighting unit on at least one of a deck, a stairway, a door, a window, aroofline, a gazebo, a jungle gym, a swing set, a slide, a tree house, aclub house, a garage, a shed, a pool, a spa, furniture, an umbrella, acounter, a cabinet, a pond, a walkway, a tree, a fence, a light pole,and a statue.
 33. A method of claim 1, wherein the lighting unit isconfigured to be recessed in an alcove.
 34. A lighting system includingat least first and second units, comprising: a substantially linearcircuit board in each unit; a plurality of light sources along thecircuit board, wherein the circuit board and the light sources aredisposed in a substantially linear housing of each unit; alight-transmissive cover for the housing; a connection facility of thehousing, wherein the lighting system is arranged such that the firstunit of the lighting system is disposed end to end with the second unitof the lighting system without a gap in light emission between thehousings; and a processor, wherein the processor is an applicationspecific integrated circuit (ASIC); and wherein the ASIC responds to adata stream addressed to it, modifies at least one bit of the datastream, and transmits the modified data stream.
 35. A system of claim34, wherein the light sources are LEDs.
 36. A system of claim 34,wherein the processor and the LEDs are on the same circuit board.
 37. Asystem of claim 34, wherein the connection facility is a hole thatallows cables to exit the housing at a location other than the end ofthe housing.
 38. A lighting system including at least first and secondunits, comprising: a substantially linear circuit board in each unit; aplurality of light sources along the circuit board, wherein the circuitboard and the light sources are disposed in a substantially linearhousing of each unit; a light-transmissive cover for the housing; aconnection facility of the housing, wherein the lighting system isarranged such that the first unit of the lighting system is disposed endto end with the second unit of the lighting system without a gap inlight emission between the housings; and a plurality of lighting systemsin a serial configuration that are controlled by a stream of data torespective ASICs of each of them, wherein each lighting system respondsto the first unmodified bit of data in the stream, modifies that bit ofdata, and transmits the stream to the next ASIC.
 39. A system of claim34, wherein the housing is configured to resemble a fluorescent light.40. A system of claim 34, wherein the housing is curved.
 41. A system ofclaim 34, wherein the housing is configured in a bent configuration. 42.A system of claim 34, wherein the housing is configured in a branchedconfiguration.
 43. A system of claim 34, wherein the housing isconfigured in a T configuration.
 44. A system of claim 34, furthercomprising a communication facility of the lighting system, wherein thelighting system responds to data from a source exterior to the lightingsystem.
 45. A system of claim 44, wherein the data is from a signalsource exterior to the lighting system.
 46. A system of claim 45,wherein the signal source is a wireless signal source.
 47. A system ofclaim 45, wherein the signal source includes a sensor for sensing anenvironmental condition, and the control of the lighting system is inresponse to the environmental condition.
 48. A system of claim 45,wherein the signal source generates a signal based on a scriptedlighting program for the lighting system.
 49. A system of claim 34,wherein the control of the lighting system is based on assignment oflighting system units as objects in an object-oriented computer program.50. A system of claim 49, wherein the computer program is an authoringsystem.
 51. A system of claim 50, wherein the authoring system relatesattributes in a virtual system to real world attributes of lightingsystems.
 52. A system of claim 51, wherein the real world attributesinclude positions of lighting units of the lighting system.
 53. A systemof claim 49, wherein the computer program is a computer game.
 54. Asystem of claim 49, wherein the computer program is a music program. 55.A system of claim 34, wherein the lighting system includes a powersupply.
 56. A system of claim 55, wherein the power supply is apower-factor-controlled power supply.
 57. A system of claim 55, whereinthe power supply is a two-stage power supply.
 58. A system of claim 55,wherein power factor correction includes an energy storage capacitor anda DC—DC converter.
 59. A system of claim 55, wherein the power factorcorrection and energy storage capacitor are separated from the DC—DCconverter by a bus.
 60. A system of claim 34, further comprising atleast one such lighting unit on a building.
 61. A system of claim 60,wherein the lighting units are disposed in an array on a building.
 62. Asystem of claim 60, wherein the array is configured to facilitatedisplaying at least one of a number, a word, a letter, a logo, a brand,and a symbol.
 63. A system of claim 61, wherein the array is configuredto display a light show with time-based effects.
 64. A system of claim34, further comprising a lighting unit on at least one of a vehicle, anautomobile, a boat, a mast, a sail, an airplane, a wing, a fountain, anda waterfall.
 65. A system of claim 34, further comprising a lightingunit on at least one of a deck, a stairway, a door, a window, aroofline, a gazebo, a jungle gym, a swing set, a slide, a tree house, aclub house, a garage, a shed, a pool, a spa, furniture, an umbrella, acounter, a cabinet, a pond, a walkway, a tree, a fence, a light pole,and a statue.
 66. A system of claim 34, wherein the lighting unit isconfigured to be recessed in an alcove.
 67. A method of claim 1, whereinthe cover is optically operative to diffuse light from the plurality oflight sources to produce a smooth color mixing of the light.
 68. Amethod of claim 1, wherein the cover is optically operative to produce asubstantially uniform light intensity of light from the plurality oflight sources.
 69. a system of claim 34, wherein the cover is opticallyoperative to diffuse light from the plurality of light sources toproduce a smooth color mixing of the light.
 70. A system of claim 34,wherein the cover is optically operative to produce a substantiallyuniform light intensity of light from the plurality of light sources.71. The method of claim 1, wherein the light-transmissive cover includeslight-transmissive end caps.
 72. The system of claim 34, wherein thelight-transmissive cover includes light-transmissive end caps.